Trading Options from Underlying Symbol Strategies

Discussion in 'Automated Trading' started by a_tech_trade, Nov 27, 2019.

  1. Hi, everyone,

    This is my first post (sorry for no introduction yet), but I’ll try make this concise. I’m looking to deploy strategies which I’ve been developing and backtesting in ThinkorSwim, except I want to trade stock and ETF equity options instead of the underlying symbols directly. I.e., the underlying symbol strategy conditions fire the events for a handler function to trade its calls/puts. On what platforms would I be able to achieve this?

    NinjaTrader is off the table for me as I have discovered, even though I’ve successfully converted my strategies to their platform, because I found out that “Options are not supported for NinjaScript use,” according to their documentation (

    So now I’m looking into MetaTrader 5, StockSharp (S#), and Python for solutions. But could anyone kindly share any tips or suggestions to help me, please? I’m looking for the simplest solution, as I’m not a programmer and still need to outsource for a programmer to write the function I need for an event handler to trade options.

    My broker is TD Ameritrade, btw, but I don’t mind switching to Etrade if I need to (because, for example, StockSharp does not support a TDA connection but does support Etrade). From MT5 to S# to Python though, respectively, things start to look more and more complicated to me lol, so I’m hoping to find the simplest, most streamlined solution for the purpose I’ve outlined.

    So I’d like to ask, what would you do if you were trying to do the same thing? Or do you already have an automated system set up to trade options off strategies from underlying symbols?

    Thank you, and I would appreciate very much your input.
    taowave likes this.
  2. Since you already have the algorithm, I would suggest that you use Python and build your own framework. It will suck initially, but eventually, you will be way more productive. That was my experience.
    a_tech_trade, Handle123 and SteveH like this.
  3. lindq


    Look at InvestorRT at Email them and explain your objectives.
    a_tech_trade likes this.
  4. Handle123


    I contacted linnsoft and they said:

    "I am not aware of any traders performing automated options trades. That is not to say that it wouldn't work. It's just that the program has not been designed with that in mind. For example, Investor/RT does not offer historical implied vol's or other greeks and I am pretty sure that is going to be the main thing you need.


    Shawn W. Cooke"

    So most likely you being doing as most others have done and as pointed out by
    a_tech_trade and nooby_mcnoob like this.
  5. Thanks for your replies and suggestions.

    Also thank you, Handle123, for asking Investor/RT about that as well! But I suspect Investor/RT might still be on the table for me potentially, as I will have to follow up and confirm with them some more things, because I should point out that my options trading (at least for the scope of this use-case) is mostly agnostic of any of the Greeks and because I bank on directional movement and intrinsic value (hence I trade mostly ATM or ITM options for their higher delta value to capture more underlying price movement; although I keep an eye on other factors like historical IV percentile of the underlying). So for my use case, I only need to fetch the correct strike price/exp. date to make the desired trade; and the TDA/Etrade APIs are robust enough to cover this requirement.

    I've confirmed with StockSharp that I'd able to do what I need through their platform, so I'm exploring it currently (although running into some walls because while S# is very robust and complex, it's also very complicated with a steep learning curve).

    I'm still awaiting a response back from MetaTrader 5 as to the same question on the other hand. I have some novice experience with Python, Jupyter Notebook, and some packages like Pandas and Matplotlib, but nothing very complex, so I would certainly need to pay for someone to help me build most of the framework since I don't have enough experience with API development to do it confidently/efficiently.

    And then outsourcing a whole framework poses the problems of keeping my strategies private, which may prove tricky to outsource such a complex task (then I'd need to audit it for security by a third-party, ironically adding even further potential exposure/disclosure!). Of course this all ignores any potential, inadvertent exposure or leaking of information to any of the other platforms and takes for granted I could keep them discreet in the first place, which is definitely a concern of mine too (as they're being input into a 3rd party platform after all, unless you build out your framework from scratch). And so I'm also interested in how you all obfuscate your strategies or keep them private. Ideally the underlying strategies will be opaque as possible to the broker/platform as well.

    But I agree that Python would probably be the most flexible, albeit the most complicated for me as well, so I'd prefer to leverage as many features in existing platforms, such as charting, technical indicators, brokerage account authentication connectors, etc. I was even thinking of ways to scrape from the NinjaTrader log to listen for the strategy conditions to fire an action/handler from a separate platform like Python (since you can use the log() function in NT for strategy actions to print informational logs). This would definitely be the most clunky way of doing it, for sure tho haha! Any insights on this unusual tactic?

    Thank again :)
    Last edited: Nov 30, 2019