Name | eNGame JSON |
Version |
0.0.4
JSON |
| download |
home_page | None |
Summary | A tool to help you pick the optimal securities for Norbert's Gambit |
upload_time | 2024-10-09 22:11:29 |
maintainer | None |
docs_url | None |
author | Daniel Lenski |
requires_python | <4.0,>=3.9 |
license | GPLv3 or later |
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# eNGame
A tool to help you pick the optimal securities to convert between US and Canadian currency using Norbert's Gambit,
based on near-realtime data obtained from Yahoo Finance.
- Forum thread: https://www.financialwisdomforum.org/forum/viewtopic.php?t=198
- Wiki explainer: https://www.finiki.org/wiki/Norbert%27s_gambit
- Forbes article: https://www.forbes.com/advisor/ca/investing/what-is-norberts-gambit/
# Example
My brokerage charges me commissions of US\$15.00 + US\$0.01/share to buy US\$ securities,
and a flat CA\$8.00 to sell CA\$ securities.
I can execute both of the trades near-instantaneously, [without
needing to call or message my broker to "journal" shares from one currency to the other](https://www.finiki.org/wiki/Norbert%27s_gambit#An_example:~:text=you%20usually%20must%20request%20that%20the%20broker%20journal%20shares%20from%20the%20long%20side%20to%20cover%20the%20short%20on%20settlement%20date%20two%20business%20days%20(T%20%2B%202)%20later.%20This%20usually%20requires%20a%20phone%20call%20to%20the%20broker.) BMO InvestorLine
is an example of a brokerage where [no journaling step is required](https://www.reddit.com/r/PersonalFinanceCanada/comments/ya3bwh.
I want to convert US\$50,000 to CA\$. Right now, the mid-market exchange rate is about 1.3512 CAD/USD.
What are the 5 best
[interlisted CA\$/US\$ stocks or ETFs](https://www.canadianmoneyforum.com/threads/dual-listed-etfs-tsx-nyse.135364/post-1972456)
to use to do this conversion right now?
Engame can show you the best options. Note that the three best options right now would get you an effective exchange rate
that's _actually slightly better than_ the mid-market exchange rate, _assuming that you execute both sides of the trade near-instantaneously
at the stated bid/ask prices_:
```
$ engame USD 50000 -v -L 5 -S '15.00 + 0.01 * shares' -D '8.00'
```
![Screenshot](screenshot.png)
# Details
Run `engame --help` for more details.
# TODO
Configuration file for preferred symbols and commission structure?
Automatic detection of some of the common [pitfalls and problems](https://www.finiki.org/wiki/Norbert%27s_gambit#Pitfalls_and_problems),
including ex-dividend dates and differing market holidays on US and Canadian markets.
# Disclaimers
1. Do not use this if you don't understand how Norbert's Gambit works.
2. I take no responsibility for the accuracy or the timeliness of the stock/ETF/currency data.
3. I take no responsibility for the correctness of the calculations.
4. Without a realtime data source for [Level II quotes](https://www.investopedia.com/articles/trading/06/level2quotes.asp#toc-what-is-level-ii),
we cannot be sure that there is sufficient market depth to complete both sides of the trade at the expected prices. Limit orders
cannot protect you here, because _both sides_ of the trade need to complete quickly in order to achieve the desired
currency-conversion outcome.
Raw data
{
"_id": null,
"home_page": null,
"name": "eNGame",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.9",
"maintainer_email": null,
"keywords": null,
"author": "Daniel Lenski",
"author_email": "dlenski@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/73/a1/2c0731cbd8c1e7366b76f614fe3462faf2812f863c8d25f955ca741a664d/engame-0.0.4.tar.gz",
"platform": null,
"description": "# eNGame\n\nA tool to help you pick the optimal securities to convert between US and Canadian currency using Norbert's Gambit,\nbased on near-realtime data obtained from Yahoo Finance.\n\n- Forum thread: https://www.financialwisdomforum.org/forum/viewtopic.php?t=198\n- Wiki explainer: https://www.finiki.org/wiki/Norbert%27s_gambit\n- Forbes article: https://www.forbes.com/advisor/ca/investing/what-is-norberts-gambit/\n\n# Example\n\nMy brokerage charges me commissions of US\\$15.00 + US\\$0.01/share to buy US\\$ securities,\nand a flat CA\\$8.00 to sell CA\\$ securities.\n\nI can execute both of the trades near-instantaneously, [without\nneeding to call or message my broker to \"journal\" shares from one currency to the other](https://www.finiki.org/wiki/Norbert%27s_gambit#An_example:~:text=you%20usually%20must%20request%20that%20the%20broker%20journal%20shares%20from%20the%20long%20side%20to%20cover%20the%20short%20on%20settlement%20date%20two%20business%20days%20(T%20%2B%202)%20later.%20This%20usually%20requires%20a%20phone%20call%20to%20the%20broker.) BMO InvestorLine\nis an example of a brokerage where [no journaling step is required](https://www.reddit.com/r/PersonalFinanceCanada/comments/ya3bwh.\n\nI want to convert US\\$50,000 to CA\\$. Right now, the mid-market exchange rate is about 1.3512 CAD/USD.\n\nWhat are the 5 best\n[interlisted CA\\$/US\\$ stocks or ETFs](https://www.canadianmoneyforum.com/threads/dual-listed-etfs-tsx-nyse.135364/post-1972456)\nto use to do this conversion right now?\n\nEngame can show you the best options. Note that the three best options right now would get you an effective exchange rate\nthat's _actually slightly better than_ the mid-market exchange rate, _assuming that you execute both sides of the trade near-instantaneously\nat the stated bid/ask prices_:\n\n```\n$ engame USD 50000 -v -L 5 -S '15.00 + 0.01 * shares' -D '8.00'\n```\n![Screenshot](screenshot.png)\n\n# Details\n\nRun `engame --help` for more details.\n\n# TODO\n\nConfiguration file for preferred symbols and commission structure?\n\nAutomatic detection of some of the common [pitfalls and problems](https://www.finiki.org/wiki/Norbert%27s_gambit#Pitfalls_and_problems),\nincluding ex-dividend dates and differing market holidays on US and Canadian markets.\n\n# Disclaimers\n\n1. Do not use this if you don't understand how Norbert's Gambit works.\n2. I take no responsibility for the accuracy or the timeliness of the stock/ETF/currency data.\n3. I take no responsibility for the correctness of the calculations.\n4. Without a realtime data source for [Level II quotes](https://www.investopedia.com/articles/trading/06/level2quotes.asp#toc-what-is-level-ii),\n we cannot be sure that there is sufficient market depth to complete both sides of the trade at the expected prices. Limit orders\n cannot protect you here, because _both sides_ of the trade need to complete quickly in order to achieve the desired\n currency-conversion outcome.\n",
"bugtrack_url": null,
"license": "GPLv3 or later",
"summary": "A tool to help you pick the optimal securities for Norbert's Gambit",
"version": "0.0.4",
"project_urls": null,
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "8284714551d989353a70d5efdaa9035b48c66cae1996d2a7ea0389b66cb9379a",
"md5": "205efa3f547e1b3f99a51a5fd028d20b",
"sha256": "882b0cbe04b1533d00e820c0f6f378e63c8bcbda2600abe96badec13b6c804d9"
},
"downloads": -1,
"filename": "engame-0.0.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "205efa3f547e1b3f99a51a5fd028d20b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.9",
"size": 20989,
"upload_time": "2024-10-09T22:11:27",
"upload_time_iso_8601": "2024-10-09T22:11:27.195369Z",
"url": "https://files.pythonhosted.org/packages/82/84/714551d989353a70d5efdaa9035b48c66cae1996d2a7ea0389b66cb9379a/engame-0.0.4-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "73a12c0731cbd8c1e7366b76f614fe3462faf2812f863c8d25f955ca741a664d",
"md5": "9a25ef23e2cfee7fc1604af0c69bbcb9",
"sha256": "be2044bf0b409357e6c412cd6f02e069ab2d9cedc1ce319ac7ec47a1481ae3fa"
},
"downloads": -1,
"filename": "engame-0.0.4.tar.gz",
"has_sig": false,
"md5_digest": "9a25ef23e2cfee7fc1604af0c69bbcb9",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.9",
"size": 19663,
"upload_time": "2024-10-09T22:11:29",
"upload_time_iso_8601": "2024-10-09T22:11:29.034644Z",
"url": "https://files.pythonhosted.org/packages/73/a1/2c0731cbd8c1e7366b76f614fe3462faf2812f863c8d25f955ca741a664d/engame-0.0.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-09 22:11:29",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "engame"
}