Automated trading platform for C# developers Automatic trading platform developed in C# language.
Allows to develop market robots for any financial instrument

StocksBot information

Welcome to StocksBot!!. As it name suggests, it's a bot made to work with stocks. Which stocks? well there is no limit but it was actually working with more than 5000 USA stocks "simultaneously".

Now you must be wondering, as explained in the 'how it works' page, the architechture of RobotBase is made to work with a single financial instrument. That's true and there are no plans to change that. Nonetheless there are ways to make the robot work with the thousands of instrumens (aka stocks). From the posible solutions, we picked up and implemented the following solution:

  1. Parameters: First matter to consider is if it worths to have different parameters for each of the thousands of instruments. StockBot works with day size candles. So the amount of candles for a single instrument is considered too small to optimize. If we optimize every instrument separately we will fall in the mistake of over-optimization. So we decided to use the same parameters for all the instruments and optimize them for the group of simulations. This means, we will consider the final simulation for optimizzation, the compound of the thousands of simulations, one per instrument. So the parameters optimization will maximize the profit and winrate for the compound of all instruments. When launchin on real the bot with every instrument, will pick these optimized parameters.
  2. How to manage all instruments on real time: This is the biggest specific challenge for StockBot.
    1. One possible solution would be to run one instance of the platform per instrument. This solution is not the most suitable because of many reasons. This will consume a lot of memory, and most important, will need a socket connection for every instance, while only few of them will be used.
    2. Picked solution is the following: After updating quotes from all or part of the instruments, the bot will be run every instrument in simulation mode (or backtest). After this, the program (that's outside of the bot) will have "x" simulations, each of them with all the "executed" orders. Then, the program will pick all the orders from the last day (today). These orders will be sent to the trading terminal, all with the same client/socket connection. Note that orders picked from the last day may be opening orders or closing orders. Some closings are done automatically if price touches take profit or stop loss level, but some others are closed with a market order. 

On the following points, some of the main characteristics are described:

Market Robots ®2024