Стратегия и скорость

 
Хочу поделится опытом и в тоже время спросить совета.
Моя тактика.
Открываем два ордера BUYSTOP и SELLSTOP c разницей в 30 пунктов и TAKEPROFIT 20 пунктов,после открытия одной из позиций
выставляется ордер на величину открытого +ТР, на продолжение с учётом спреда,тоже с ТР=20 р .
В случае движения в одну сторону понятно,один закрывается тут же открывается другой и т.д.
  По мере движения двигаем и не открытый ордер,который увеличиваем  на лот. С этой частью всё просто.
  Но вот после открытия одного ордера всё разворачивается и открывается позиция в противоположную сторону (2 лота) мы
добавляем stoporder в обратную сторону на случай следующего разворота .
 Каждый разворот мы добавляем по лоту в противоположную сторону.
По всем открытым ордерам считаем безубыток и выставляем take profit и stop loss в соответствии с тем куда идёт движение,
прибавляя свой интерес 20 р. Если идём то происходит массовое закрытие с плюсом и всё продолжается.
Основная масса накопившихся ордеров находится в локе,но мы всегда идём в какую либо сторону с большим количеством лотов.
Если кол-во лотов велико, при глухом флете, можно залочить полность и добавить ордера выше и ниже от этого коридора.
Лучше лот удваивать но есть такие периоды на графиках когда может очень много собраться лотов.
Таких периодов немного 1-2 раза в месяц.
Таким образом мы не проигываем вообще. И работаем только с отложниками.
Скажу сразу на демо счёте тест не удаётся слишком много бывает огрехов у брокера даже суток не выдерживает.Проще на реале.
Думаю понятно что в ручную этого сделать невозможно .
Поэтому написан советник он работает на малом реале нормально и собирает по 20 р на 3 х парах.
Советник очень сложный и поэтому его тестирование очень трудоёмким было.
Но если присоединить его к 5-6 парам начинаются проблемы со скоростью.
Если кто встречался с подобными сложностями подскажите что быстрее:
   Перебор ордеров или создание массивов и их перебор.
   Как сделать независимый (дополнительный ) контроль позиций,но 
незагружая советник, в тоже время с обратной связью.
Моя мысль это написать отдельную программу или DLL и использовать для контроля на случай возникновения ошибок .
Но это слишком сложно.
Какие кто знает способы и методы поделитесь принципами.
Все статьи на сайте на эту тему мне известны.

Спасибо.
 
Программисты-профессионалы Вам авторитетно обязательно ответят. Мое мнение, что надо через массивы просто уже потому чтобы больше об этом себя не спрашивать..
Интересно, а сколько у Вас одновременно максимально ордеров накапливается, что Вы почувствовали необходимость оптимизации обращения к ним?
Интересно было бы на стейт взглянуть того, который собирает по 20 р на 3 х парах - о...ох, не верится что-то.
 
Это нечто! Если экспрет смотрит историю, как минимальное средство - загружать меньше истории. Если этого недостаточно - на запуске эксперта собрать в массив историю, по мере изменения размера истории корректировать массив (добавлять ордера), чтобы всю историю не прокручивать и работать с массивом. Вобщем-то можно и не заботиться о глубине истории - на запуске собирая моссив с историей не добавлять в него старые и ненужные для анализа ордера. А то, что может быть такая проблема из-за обилия ордеров в рынке, не могу поверить.
Причина обращения: