## Ticker symbol parsing and convention conversions.
## Install
`pip install symbol_parser`
#### All functionality is accessed through the Symbol class.
```python
from symbol_parser import Symbol
```
see [symbol.py](./symbol_parser/symbol.py) for usage.
## Data
Data used in this module is extracted from https://www.nasdaqtrader.com/Trader.aspx?id=CQSSymbolConvention
<table>
<tbody>
<tr>
<th><strong>Security<br>
Categorization</strong></th>
<th><strong>CQS Suffix</strong></th>
<th><strong>CMS Suffix</strong></th>
<th><strong>NASDAQ Integrated Platform Suffix</strong></th>
<th>NASDAQ ACT/CTCI Suffixes</th>
</tr>
<tr><td>Preferred</td><td>p</td><td>PR</td><td>-</td><td>$</td></tr>
<tr><td>Preferred Class "A"*</td><td>pA</td><td>PRA</td><td>-A</td><td> $A</td></tr>
<tr><td>Preferred Class "B"*</td><td>pB</td><td>PRB</td><td>-B</td><td>$B</td></tr>
<tr><td>Class "A"*</td><td>.A</td><td>A</td><td>.A</td><td> .A</td></tr>
<tr><td>Class "B"*</td><td>.B</td><td>B</td><td>.B</td><td> .B</td></tr>
<tr><td>Preferred when distributed</td><td>p.WD</td><td>PRWD</td><td>-$</td><td>.D</td></tr>
<tr><td>When distributed</td><td>.WD</td><td>WD</td><td>$</td><td>.Z</td></tr>
<tr><td>Warrants</td><td>.WS</td><td>WS</td><td>+</td><td>.W</td></tr>
<tr><td>Warrants Class "A"*</td><td>.WS.A</td><td>WSA</td><td>+A</td><td>.W or .A**</td></tr>
<tr><td>Warrants Class "B"*</td><td>.WS.B</td><td>WSB</td><td>+B</td><td> </td></tr>
<tr><td>Called</td><td>.CL</td><td>CL</td><td>*</td><td> </td></tr>
<tr><td>Class "A" Called*</td><td>.A.CL</td><td>ACL</td><td>.A*</td><td>.A</td></tr>
<tr><td>Preferred called</td><td>p.CL</td><td>PRCL</td><td>-*</td><td>$</td></tr>
<tr><td>Preferred "A" called*</td><td>pA.CL</td><td>PRACL</td><td>-A*</td><td>$A</td></tr>
<tr><td>Preferred "A" when issued*</td><td>pAw</td><td>PRAWI</td><td>-A#</td><td> .V or .Z</td></tr>
<tr><td>Emerging Company Marketplace</td><td>.EC</td><td>EC</td><td>!</td><td>.E</td></tr>
<tr><td>Partial Paid</td><td>.PP</td><td>PP</td><td>@</td><td> </td></tr>
<tr><td>Convertible</td><td>.CV</td><td>CV</td><td>%</td><td> </td></tr>
<tr><td>Convertible called</td><td>.CV.CL</td><td>CVCL</td><td>%*</td><td> </td></tr>
<tr><td>Class Convertible</td><td>.A.CV</td><td>ACV</td><td>.A%</td><td> </td></tr>
<tr><td>Preferred (class A) Convertible</td><td>pA.CV</td><td>PRACV</td><td>-A%</td><td> </td></tr>
<tr><td>Preferred (class A) when Distributed</td><td>pA.WD</td><td>PRAWD</td><td>-A$</td><td> </td></tr>
<tr><td>Rights</td><td>r</td><td>RT</td><td>^</td><td>.R</td></tr>
<tr><td>Units</td><td>.U</td><td>U</td><td>=</td><td>.U</td></tr>
<tr><td>When issued</td><td>w</td><td>WI</td><td>#</td><td>.V or .Z</td></tr>
<tr><td>Rights when issued</td><td>rw</td><td>RTWI</td><td>^#</td><td>.V or .Z</td></tr>
<tr><td>Preferred when issued</td><td>pw</td><td>PRWI</td><td>-#</td><td>.V or .Z</td></tr>
<tr><td>Class "A" when issued*</td><td>.Aw</td><td>AWI</td><td>.A#</td><td>.V or .Z</td></tr>
<tr><td>Warrrant when issued</td><td>.WSw</td><td>WSWI</td><td>+#</td><td>.V or .Z</td></tr>
<tr><td>TEST symbol</td><td>.TEST</td><td>TEST</td><td>~</td><td></td></tr>
</tbody>
</table>
Raw data
{
"_id": null,
"home_page": "https://github.com/danklabs-dev/symbol-parser",
"name": "symbol-parser",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.8.1,<4.0.0",
"maintainer_email": "",
"keywords": "",
"author": "Dan Kelleher",
"author_email": "kelleherjdan@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/31/9e/f0d5accfe460425aae17052f78d08a7ca036804798c2ce0592a1283fad26/symbol_parser-1.0.1.tar.gz",
"platform": null,
"description": "## Ticker symbol parsing and convention conversions.\n\n## Install\n`pip install symbol_parser` \n\n#### All functionality is accessed through the Symbol class.\n```python\nfrom symbol_parser import Symbol\n```\nsee [symbol.py](./symbol_parser/symbol.py) for usage. \n\n## Data\nData used in this module is extracted from https://www.nasdaqtrader.com/Trader.aspx?id=CQSSymbolConvention\n<table>\n <tbody>\n <tr>\n <th><strong>Security<br>\n Categorization</strong></th>\n <th><strong>CQS Suffix</strong></th>\n <th><strong>CMS Suffix</strong></th>\n <th><strong>NASDAQ Integrated Platform Suffix</strong></th>\n <th>NASDAQ ACT/CTCI Suffixes</th>\n </tr>\n <tr><td>Preferred</td><td>p</td><td>PR</td><td>-</td><td>$</td></tr>\n <tr><td>Preferred Class \"A\"*</td><td>pA</td><td>PRA</td><td>-A</td><td> $A</td></tr>\n <tr><td>Preferred Class \"B\"*</td><td>pB</td><td>PRB</td><td>-B</td><td>$B</td></tr>\n <tr><td>Class \"A\"*</td><td>.A</td><td>A</td><td>.A</td><td> .A</td></tr>\n <tr><td>Class \"B\"*</td><td>.B</td><td>B</td><td>.B</td><td> .B</td></tr>\n <tr><td>Preferred when distributed</td><td>p.WD</td><td>PRWD</td><td>-$</td><td>.D</td></tr>\n <tr><td>When distributed</td><td>.WD</td><td>WD</td><td>$</td><td>.Z</td></tr>\n <tr><td>Warrants</td><td>.WS</td><td>WS</td><td>+</td><td>.W</td></tr>\n <tr><td>Warrants Class \"A\"*</td><td>.WS.A</td><td>WSA</td><td>+A</td><td>.W or .A**</td></tr>\n <tr><td>Warrants Class \"B\"*</td><td>.WS.B</td><td>WSB</td><td>+B</td><td> </td></tr>\n <tr><td>Called</td><td>.CL</td><td>CL</td><td>*</td><td> </td></tr>\n <tr><td>Class \"A\" Called*</td><td>.A.CL</td><td>ACL</td><td>.A*</td><td>.A</td></tr>\n <tr><td>Preferred called</td><td>p.CL</td><td>PRCL</td><td>-*</td><td>$</td></tr>\n <tr><td>Preferred \"A\" called*</td><td>pA.CL</td><td>PRACL</td><td>-A*</td><td>$A</td></tr>\n <tr><td>Preferred \"A\" when issued*</td><td>pAw</td><td>PRAWI</td><td>-A#</td><td> .V or .Z</td></tr>\n <tr><td>Emerging Company Marketplace</td><td>.EC</td><td>EC</td><td>!</td><td>.E</td></tr>\n <tr><td>Partial Paid</td><td>.PP</td><td>PP</td><td>@</td><td> </td></tr>\n <tr><td>Convertible</td><td>.CV</td><td>CV</td><td>%</td><td> </td></tr>\n <tr><td>Convertible called</td><td>.CV.CL</td><td>CVCL</td><td>%*</td><td> </td></tr>\n <tr><td>Class Convertible</td><td>.A.CV</td><td>ACV</td><td>.A%</td><td> </td></tr>\n <tr><td>Preferred (class A) Convertible</td><td>pA.CV</td><td>PRACV</td><td>-A%</td><td> </td></tr>\n <tr><td>Preferred (class A) when Distributed</td><td>pA.WD</td><td>PRAWD</td><td>-A$</td><td> </td></tr>\n <tr><td>Rights</td><td>r</td><td>RT</td><td>^</td><td>.R</td></tr>\n <tr><td>Units</td><td>.U</td><td>U</td><td>=</td><td>.U</td></tr>\n <tr><td>When issued</td><td>w</td><td>WI</td><td>#</td><td>.V or .Z</td></tr>\n <tr><td>Rights when issued</td><td>rw</td><td>RTWI</td><td>^#</td><td>.V or .Z</td></tr>\n <tr><td>Preferred when issued</td><td>pw</td><td>PRWI</td><td>-#</td><td>.V or .Z</td></tr>\n <tr><td>Class \"A\" when issued*</td><td>.Aw</td><td>AWI</td><td>.A#</td><td>.V or .Z</td></tr>\n <tr><td>Warrrant when issued</td><td>.WSw</td><td>WSWI</td><td>+#</td><td>.V or .Z</td></tr>\n <tr><td>TEST symbol</td><td>.TEST</td><td>TEST</td><td>~</td><td></td></tr>\n </tbody>\n</table>\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Utility for parsing ticker symbols and converting symbol syntax to different conventions.",
"version": "1.0.1",
"project_urls": {
"Homepage": "https://github.com/danklabs-dev/symbol-parser",
"Repository": "https://github.com/danklabs-dev/symbol-parser"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "7ff8cab293f0b42972bf7cd5be56bb823e704f0ad3732d502b1063f112b68643",
"md5": "378f9c6a74af53a8d19da6d45538fe81",
"sha256": "71f9d2c52ff797f444ffa7a05a5f4d4f2294456307a3e4acb523ae9e84aeef0c"
},
"downloads": -1,
"filename": "symbol_parser-1.0.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "378f9c6a74af53a8d19da6d45538fe81",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8.1,<4.0.0",
"size": 7111,
"upload_time": "2023-06-16T01:34:29",
"upload_time_iso_8601": "2023-06-16T01:34:29.665581Z",
"url": "https://files.pythonhosted.org/packages/7f/f8/cab293f0b42972bf7cd5be56bb823e704f0ad3732d502b1063f112b68643/symbol_parser-1.0.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "319ef0d5accfe460425aae17052f78d08a7ca036804798c2ce0592a1283fad26",
"md5": "0a78e609c3d6598d048a4dcfd60e705d",
"sha256": "3557f18b5ecfdc10f181541fcb64a2e650a143f01a29bf30821342e5248c45db"
},
"downloads": -1,
"filename": "symbol_parser-1.0.1.tar.gz",
"has_sig": false,
"md5_digest": "0a78e609c3d6598d048a4dcfd60e705d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8.1,<4.0.0",
"size": 6851,
"upload_time": "2023-06-16T01:34:30",
"upload_time_iso_8601": "2023-06-16T01:34:30.849767Z",
"url": "https://files.pythonhosted.org/packages/31/9e/f0d5accfe460425aae17052f78d08a7ca036804798c2ce0592a1283fad26/symbol_parser-1.0.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-06-16 01:34:30",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "danklabs-dev",
"github_project": "symbol-parser",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "symbol-parser"
}