Platform with ranking ability for indicator values

Discussion in 'Strategy Building' started by Kris, Jun 6, 2020.

  1. Kris


    I have a system that involves filtering stocks for price and volume and then ranking them by lowest ADX value. It then sends out limit orders for up to 10 positions (for those stocks with the lowest ranked ADX value).

    Aside from Python, is there a platform that can execute something like this easily? Can this be done with Easy Language at TradeStation? If so, what would the Easy Language look like? Thanks in advance
  2. Trader200K


    That can be done quite easily with an AMIbroker Explore. I have used it for backtesting for 10+yr. Tomasz/Marcin support well, AMI software is economical and learning curve is light/moderate. Love their 3D CAR/MDD viz graphs during system optimization too. Getting 3rd party raw data in is a tad of a headache, but there are lots of available sources. Would recco if you have a few days to invest in the learning curve and don’t need to trade directly out of AMI.

    I am testing TradeStation now.

    I’m about two weeks into the learning curve with EasyLanguage. Can’t offer a specific answer there yet, but with the sophistication I have seen, I’ll bet on a yes. Tradestation does have its quirks. Gotta have a funded account to even get the program and trend line drawing/chart scaling is a smidge wonky, but the full integration of data, software and brokerage saves a whole lot of putzing around. I’m pretty pumped about getting an auto trade strategy in place to get more mechanical.

    Hope that helps.
  3. Kris


    Great feedback, thank you very much. @Trader200K why didn't you automate directly from AMIbroker? Can they connect via API to major brokerages (ie IB)?

  4. What is the frequency of the ranking? Easy to use the TS Scanner to get your list and run your strategy against those, or submit your orders based on results. I have a couple of scans I run for a similar purpose.

    Alternatively, you could load hundreds of stocks into Radar and trade based on a real-time scan. This would require Order Objects or Macros, and is not a "strategy" - extra coding is required to manage your positions. Have done this as well. If you want to post additional details, a more specific answer can be given.
    TradeTune likes this.
  5. Trader200K


    Yes, I am a big fan of AMI and Tomasz’ main work, but looking to solving the problem of having an in-house production trading system that is rock solid w/o a lot of daily ‘making sure every module is working’ is predictably a issue.

    Getting data requires a third party like DTN, which connects to AMIquote, that then imports to AMIbroker, that then connects to IB TWS module via “beta” software on the same PC that then connects to the brokerage’s server farm.

    As good as all these parties are, they have/will have different priorities. If one or the other decide not to support the interface, I am back system building again vs trading. Tomasz is honest in calling his IB connection ‘beta’ in this regard. This world would be a lot better place with more truthful folks like he is.

    As an old line systems designer coming out of the industrial, real time, distributed control world, the architecture of a system is a battle between the extremes of patching together the cheapest individual functional blocks with little care about daily operational weaknesses to outsourcing everything, closing your eyes and opening your wallet to some mediocre, but ‘safe’ conglomerate.

    I needed a mid ground path that just works. Time spent putzing w data suppliers, modules communicating (or froze up) inside or outside my computer ... and all the upgrades/support issues causing future compatibility issues very likely was going to cut into my time for managing trades and money.

    The Tradestation ‘entities’, are going to have their issues, but they have nailed the architecture with a system design that welds data/trader interface/brokerage service in a way that ‘appears to me so far’ to wrap up all the processes into a stable, reasonably priced mechanism that will let me concentrate on transactions.

    I read a rant from one mechanical trader who lost a sack of money because of some lockup that stopped data flow, but his UI gave no indication of a pbm. He finally picked up on it when he finally noticed his charts hadn’t moved for 20 min.

    In my first tests of TS, I disconnected the internet to see how it behaved. In a very short space, I got visual and audible alarms. Ditto on restoral. So Tradestation satisfies my requirement there.

    Other than a few niggling chart design issues that just require getting used to, the only real negs I have run into is I have had two system crashes w TS V10 in two weeks where everything just disappears. Both cases restarted just fine to where I was without data loss, but this is not a small worry. (I have new high end hardware and new Win10 OS.) Will be tracking this closely.
  6. Metamega


    The reason IB Controller is labelled “Beta” is due to the fact that IB could change their end at any time. You’ll never see a non Beta version labelled.
  7. Chyu


    Quite an interesting option, as for me. At least you should pay attention to it!
  8. Trader200K


    You hit the nail on the head.

    My point is that it's really no fault or criticism of either. Just an artifact of the limitations of AMI and IB as separate entities. At some point, most likely IB will move on to something new. Tomasz will have to decide if he will go with it, presuming they give him the option to do so. Divergent interests have to do what they have to do and the users depending on both just have to deal with it. Like Quantopian deciding to leave the trading biz after a lot of folks invested a lot of code time to link up. Posters were pretty frustrated by having their investment of time (money) prematurely set to zero.

    The worst cases of this I ever saw was with AutoDesk buying 3D/CNC software companies promising full support, then a year later pulling the plug ... saying switch to this other sw ... stranding millions of asset dollars plus forcing a ton of learning curve hours on customers and blowing up their schedules if they didn't pay the ransom. IMHO that's simply killing the competition. No laws were violated, but a lot of users sure felt their trust was violated.

    Ditto for summarily switching their big buck, one time, "Lifetime" licenses they had sold to monthly subscription models. The marketing geniuses were patting themselves on the back and SeekingAlpha posters were hot to trot buying ADSK shares by the buckets because they would be "printing money" ... while the owners of CNC shops across the country ... ADSK's customers ... were blasting them for turning their back on their pricing model that everyone believed was stable and fair. Overpriced and risky was their complaint. Imagine running a multimillon CNC shop with harsh competition, thinning margins and missing a monthly payment ... maybe because of a plague situation or something ... and having all your intellectual property and ability to produce encrypted tight. Noticeable risk eh? I was on the verge of recommending a large ADSK purchase, but moved to another vendor just to avoid this risk and ongoing expense. Worked out at a reasonable cost and zero risk of being locked down before amortizing the full cost of the software. It was a no brainer for the long run.

    That is a worst case example (and not IB/AMI related), but it shows the sudden disruption that can jump out of nowhere and range from a few days for a small problem to huge if the vendor has you totally locked in ... has an earthquake, wildfire, Antifa bust in or they just simply get greedy or decide they want to be in some other biz entirely/cease to perform. You just can't know what others will do or have to do.

    Arguably Tradestation could choke too. It is a risk, but for me, not high enough for my particular situation to deal with the daily software issues. I'm old and I am sure there are young studs making the AMI/IB interface fly.
  9. This is excellent subject your brought up. To creat or edit a macro " veiws>shorts> macros" , but how i can link macros to radarscreen and trigger it when signals generated in a TS raderscreen ? Thank you
  10. The macro code would look something like the below. I would strongly suggest Order Objects rather than Macros, much more flexibility. These would be placed in a indicator, and the indicator would buy or sell. The macro is the easy part, controlling the macro, number of positions, dealing with persistence if connection is lost, etc., etc., is the much harder part. A mistake could fire an order for every incoming tick! There is no strategy protection. If you are not comfortable coding and working through the logic, I suggest you hire someone to do it for you.

    MarketOrder("OncePerBar", Account,"Sell","Equity",Symbol,PositionQuantity);
    #10     Jun 7, 2020
    TradeTune likes this.