Repository contains one (1) trading strategy and three (3) non-trading strategies written in Lua and intended to be executed using FXCM Trading Station; all three were originally created as proof of concepts. FXCM Trading Station is a financial trading application written for Windows that can leverage scripts written in Lua (and JavaScript) via Indicore SDK to further extend functionality.
Proof of concept to calculate and aggregate select values from user specified FXCM, Oanda and/or Robinhood account(s). Currently includes equity, day p/l and leverage though modifying or adding additional data points is trivial. Oanda and Robinhood data is sourced via RESTful API queries. (Requires JSON.lua.)
Proof of concept to control Philips Hue Lights based on trading activity.
Designed to copy postion(s) from an FXCM account to an Oanda account. FXCM positions are sourced from FXCM Trading Station directly and Oanda positions verified and modified via RESTful API queries. (Requires JSON.lua.)
Proof of concept to facilitate of push notifications for trading, account and offer activity.
-
Clone or download desired *.lua files from this repository. (Note that 'Investment Dashboard' and 'FXCM To Oanda Trade Copier' require JSON.lua.)
-
Move *.lua files to the following directory depending on 32 or 64 bit OS version:
C:\Program Files (x86)\Candleworks\FXTS2\strategies\Custom
C:\Program Files\Candleworks\FXTS2\strategies\Custom
-
If previously running, close and reopen FXCM Trading Station.
-
Strategy(ies) will now be available under 'Alerts and Trading Automation' > 'New Strategy or Alert.'
OR
-
Clone or download desired *.lua files from this repository. (Note that 'Investment Dashboard' and 'FXCM To Oanda Trade Copier' require JSON.lua.)
-
If not running, open FXCM Trading Station.
-
Drap and drop *.lua files onto a Marketscope chart instance.
- Bug fix release
- Addressed issues with Robinhood leverage values
- Bug fix release
- Improved Robinhood 2 factor authentication experience
- Addressed issues with Robinhood extended hours values not populating from server
- Feature release
- Updated Robinhood data to include extended hours values
- Added Robinhood support for 2 factor authentication
- Cosmetic release
- Made Github ready
- Removed email functionality
- Cosmetic release
- Added side variable to control presentation
- Cosmetic release
- Added color formatting for values
- Update x & y coordinates calculation
- Initial release
- Proof of concept
- Initial release
- Bug Fix release
- Removed hardcoded values in AsyncOperationFinished() and updated to FXCM.SymbolToTrack.
- Feature release
- Added email notifications for order execution.
- Updated select default values.
- Cosmetic release
- Removed hardcoded values to make Github ready
- Feature release
- Added email notifications
- Feature release
- Completed PositionCheck() function, now functional
- Feature release
- Performance improvements and cosmetic code updates
- Added ParseResponse() function to parse LUA tables for eventual validation of responses from Oanda.
- Added CreatePriceBounds() function to use in CreateOrder() to support Oanda's priceBounds parameter (FXCM's market range equivalent).
- Added PositionCheck() function; currently not functional.
- Updated log method for improved troubleshooting. Went from 'Host:trace' to a custom 'WriteToLog:debug' funtion.
- Initial release
- Cosmetic release
- Usability and verbiage improvements
- Feature release
- Added effective leverage notifications
- Feature release
- Added margin call status notifications
- Added day p/l notifications
- Added offer notifications
- Feature release
- Added deposit notifications
- Added withdrawal notifications
- Added usable margin notifications
- Added market status notifications
- Added price alert notifications
- Substantial code optimization
- Removed error checking routines
- Renamed to "Push Notifications"
- Initial release
- Support for trading notifications
- Support for test notifications