Хотел немного поделиться своим опытом в данном вопросе. Для любого робототорговца встает вполне нормальный вопрос – как протестировать свой алгоритм, не потратив при этом денег. Занимаясь разработкой своего алгоритма, за бесплатно протестировать его не удалось. Причина в том, что биржа РТС с начала 2009 года ввела плату за транзакции. Согласно этому правилу, при совершении в течение торгового дня (вечерка + дневная сессия след дня) более чем 2000 транзакций, они становятся платными. Цель биржи была снизить нагрузку на сервера, что бы неэффективные алгоритмы не засоряли сервер своими заявками. Как показало время, решение возымело силу и тормозов стало меньше, но появилась небольшая проблема, о ней дальше. Взято из официального документа биржи РТС «ТАРИФЫ СЕКЦИИ СРОЧНОГО РЫНКА» VI. Сбор за Транзакции: - Сбор за Транзакции определяется каждый Торговый день отдельно по каждому разделу клиринговых регистров по Транзакциям в отношении фьючерсных контрактов и в отношении опционных контрактов. - Сбор за Транзакции не взимается, если количество Транзакций, совершенных с указанием раздела клиринговых регистров, по которому определяется указанный сбор, меньше или равно соответствующему пороговому значению (далее – Порог). Порог устанавливается равным 2000 (двум тысячам) Транзакций. - Расчет величины сбора за Транзакции производится по формуле: Fee = max( T - Round(F / 0,05); 0) *0,1, где: Fee – величина сбора за Транзакции, совершенные в течение Торгового дня; T – количество Транзакций, совершенных в течение Торгового дня с указанием раздела клиринговых регистров, по которому определяется сбор за Транзакции; F – величина биржевого сбора, подлежащего уплате за заключение фьючерсных контрактов (если определяется сбор за Транзакции в отношении фьючерсных контрактов) или за заключение опционных контрактов (если определяется сбор за Транзакции в отношении опционных контрактов), обязательства по которым учитываются на разделе клиринговых регистров, по которому определяется сбор за Транзакции; Round() – функция математического округления до целых. При тестировании, я брал фьючерс на сбер. Так как он один из самых дешевых и достаточно ликвиден. Гонял робота на нем, но т.к. комиссии были небольшими, а количество заявок, выставляемое роботом большим, с меня стали снимать данную плату, в результате за тестирование алгоритма в итоге пришлось отдать порядка 20-30 т.р. (где то за месяц тестов), причем большую часть составляла плата за транзакции. Так же важно понимать, что 1 транзакция – это выставление заявки или снятие заявки. Т.е. выставив и сняв заявку мы «тратим» 2 транзакции. Несложные вычисления показывают, что на 2000 транзакций надо отдать бирже 100р комиссии, чтобы данную плату с вас не взимали. Причем платными становятся все транзакции, а не х – 2000. Мне в голову пришло только одно решение, как это обойти: Торговать до достижения 2000 транзакций. Это неудобно, не получается накопить статистику за весь день, время тестирования затягивается. Так же идут разговоры о создании РТС тестового сервера, где за бесплатно, на демо счетах, можно отработать алгоритм работы робота, но пока его нет Если кто знает другое решение поделитесь)