Any firm provides brokerage, data-feed, and backtesting software all in one?

Discussion in 'Data Sets and Feeds' started by ezbentley, Feb 19, 2009.

  1. Hi Jerry30,

    Thanks for sharing. May I ask which automation software and broker did you end up using? Can you share your thoughts on the vendors that you looked at that can do what you want? I will most likely do what you do, except my trade signals are generated by AmiBroker, a $300 package :)

    After researching a bit on ET, I probably will not go with TS since it lacks a major function that I need: portfolio level backtesting. And there are quite a few complaints about their outdated technology.
     
    #21     Feb 22, 2009
  2. Jerry030

    Jerry030

    NT does.

    Also RightEdge looks very interesting in that it's built on top of Microsoft Net framework, both C# and VB.Net.

    http://www.rightedgesystems.com/

    So one can do ANYTHING you can program in those languages....
    from my background in corporate IT this makes a lot more sense than learning a different scripting language for each of the old style platforms like TS and the others that were designed a decade ago.

    I'll continue to post my findings as I research this and reach a decision.
     
    #22     Feb 22, 2009
  3. Jerry030

    Jerry030

    RightEdge is impressive in that it appears to be designed from the ground up with a corporate grade IT architecture. This is in contrast to some other packages that appear to be designed by traders who got the IT people involved in implementation after the general design was specified.

    Some examples from their documentation that I really like are their Data Store and Plug-in architecture.

    Jerry

    ----------- from thier online user guide ------


    Data Store Development

    RightEdge ships with a number of data storage mechanisms, known as data stores. Data stores are simply where RightEdge reads and writes tick and bar data. For each different type of data store there are trade offs. For example, the SQL Server data store requires extra setup steps and requires more system resources than the binary data store. One of the shining benefits of the SQL Server data store is that all data stored by RightEdge is accessible through SQL which is well known and well documented. SQL Server can also be extended by the end user to manipulate data using triggers, stored procedures and other features of a world class database.

    While this flexibility is powerful, the ultimate power and flexibility can be derived from implementing a data store plugin. As the name implies, this plugs directly into RightEdge. RightEdge will call the data store directly.




    Service and Plugin Overview


    RightEdge ships with a number of

    "out of the box" plugins. The plugins provide core pieces of functionality to RightEdge. In fact, plugins are not mere extensions of RightEdge, they provide the very foundation of the product. This allows a developer to change fundamental pieces of the program to suit their individual needs. What's more is that RightEdge plugins can be built using tools that are publicly accessible in languages that are well known.

    A plugin is an assembly that adheres to a predefined interface. RightEdge supports the following plugins:



    • Data Storage Plugin

    A data storage plugin allows a developer to control the way data is stored by RightEdge. RightEdge ships with a proprietary binary data store, a Jet database (Access) store and a SQL Server data store. If a developer wanted to support their own proprietary data store or a database not supported out of the box, implementing a data store would allow for seamless integration into RightEdge.

    • Indicator Plugin

    Indicator plugins are for developers who wish to implement their own indicators. Every indicator in RightEdge is a plugin. Everything that is shown in the RightEdge user interface as it relates to indicators is available to third party developers as well. All available indicators are displayed in the Indicator panel.

    • Risk Assessment Plugin

    Risk assessment plugins are implemented by those developers who want to perform portfolio level risk analysis after a simulation is complete. RightEdge ships with a number of risk assessment plugins such as Profit Factor and Sharpe Ratio, but developers who want to apply their own proprietary calculations can do so by implementing this plugin. All available risk assessment plugins are displayed in the Options dialog.

    • Action Plugin

    Actions, as used in the drag and drop interface of RightEdge, are implemented as plugins. Custom action code can be developed by implementing an action plugin. Action plugins are shown in the Components panel.

    • Trigger Plugin

    Triggers, as used in the drag and drop interface of RightEdge, are implemented as plugins. Custom trigger code can be developed by implementing a trigger plugin. Trigger plugins are shown in the Components panel.

    "Service" Plugins


    The remaining plugins in RightEdge are known as services.

    A service is a special type of plugin that typically interface with third party APIs such as data providers and brokers. Services are associated with symbols in the Watchlist pane. You can set up a hierarchical folder structure and have child folders inherit settings from their parents (or override those settings).

    Services are just like regular plugins, except for they all must implement a common interface (IService) that defines their supported services to RightEdge. Services may also implement more than one service. For example, a service that interfaces with a broker that also provides real time quotes may implement the tick data retrieval interface as well as the broker interface.

    RightEdge supports the following service plugins:



    • Bar Data Retrieval

    To retrieve bar data from a proprietary source that is not currently supported by RightEdge, implement a bar data retrieval plugin. When this interface is implemented, the service must let RightEdge know that it is capable of retrieving bar data by setting the BarDataAvailable flag to true.



    • Tick Data Retrieval

    To retrieve tick level data from a proprietary source that is not currently supported by RightEdge, implement a tick data retrieval plugin. When this interface is implemented, the service must let RightEdge know that it is capable of retrieving tick data by setting the TickDataAvailable flag to true.



    • Broker Functions

    RightEdge interfaces with live brokers. A service plugin can implement broker level services to communicate with any broker that will allow communication with a third party application. When implementing broker services, the service must let RightEdge know that it is capable of performing broker services by setting the BrokerFunctionsAvailable flag to true.
     
    #23     Feb 24, 2009
  4. Thanks Jerry for sharing the finding. RightEdge seems quite promising and is worth further research.

    BTW, can anyone recommend any book on coding automated trading systems?
     
    #24     Feb 24, 2009
  5. Jerry030

    Jerry030

    What is your conceptual framework for ATS?
    Some are:

    1) Combine various technical indicators with rules and filters to make a trade.
    2) Use sophisticated and advanced statistical and mathematical operators to generate signals independent of traditional TIs. OpenQuant or SAS have these capacities.
    3) Use data mining with neural networks, GA, EC, PCA and similar methods to discover hidden triggers for market movement.

    Jerry
     
    #25     Feb 24, 2009
  6. Hi Jerry,

    I am a complete newbie so please bear with me. What I hope to achieve at this point is more like 1) Combine various technical indicators with rules and filters to make a trade using an automated system.

    Let me explain a little about my background. I have been researching trading system ideas using AmiBroker. By system I mean simply rules of entry, exit, and money management. (buy when condition x is met, sell when condition y is met, how much to buy on each trade...) So maybe I should call this trading "concepts" research rather than system.

    What I want to do is to implement a trading strategy(concept) into a fully automated system that not only trades based on technical signals but also handles orders and accounts. As an example from RightEdge:

    http://www.rightedgesystems.com/TradingSystemsDetails.aspx?id=a6b5d6fd-10fe-4741-a126-a3b6340be838

    Even for such a simple crossover system, it takes almost 30 lines in C#. In AmiBroker this system will be 2 lines(Buy = cross(MA1, MA2)). Obviously coding in C# will allows you much more freedom and customization. So this kind of code implementation is what I want to learn. BTW, while I don't have hardcore IT background, my undergrad is in computer engineering so I believe the programming should not be too difficult for me. I just don't really know what's a good starting point to learn this stuff.
     
    #26     Feb 24, 2009
  7. Jerry030

    Jerry030

    I'd STRONGLY suggest that you first validate that a system based on technical indicators and linear logic rules will make money over a good period of time and is a valid trading strategy before you worry about automation.

    It's a matter of logical priorities. At the top is, does the system work over the long term and multiple financial instruments.
    There is a lot of evidence that standard TIs with simple rules do not do this, at least not easily.

    Even notice how articles in trading magazines that present variations in these concepts seldom show no more than a snap shot of a few hundred bars and a handful of trades, instead of the results of thousands of trades over many years?

    The process of automating is only of value once you have a system worth trading.

    I'd suggest you get a good deal of historical data, divide that in two parts. Use the first to design your system and the second to test its performance out of sample. If the performance is consistent on hundreds or thousands of trades over a number of years then you have something worth automating.

    Jerry


    Jerry
     
    #27     Feb 24, 2009
  8. heech

    heech

    God, no. Do not go down that path.
     
    #28     Mar 7, 2009
  9. heech

    heech

    I believe E-Trade and TDA are both getting pretty close on that point. I'm not intimately familiar with E-Trade's tools.. just things I've heard through the grapevine.

    But TDA has a number of things going for it. It has great data (historical bars going back several years), and also integration with numerous software tools. NinjaTrader being one, for example.

    I believe you need a separate price feed in addition to IB because IB's pricing info is notoriously unreliable... I've had no such problem with TDA. Just a TDA/NT combination is sufficient. (Minus some bugs with TDA/NT, which I've described on the NT support forum.)
     
    #29     Mar 7, 2009
  10. Yes, TDA seems to have a lot of tools. However, they are really not up to the standard of day trading. I tried to port my strategies from AmiBroker to StrategyDesk. The backtesting speed of StrategyDesk is so slow that it's almost a joke. Also the results are incorrect(signals not triggered) even for some very very simple cross over strategies. I would not trust TDA to automate my strategies reliably.
     
    #30     Mar 7, 2009