я тралю каждым советником любой символ с выставлением флага запрета
Да впринципе быстрые...
хотя есть вкупе с желанием использовать №1, т.е. один общий советник
с возможно единственным вынесеным блоком "анализа рынка" во вне...
(это на случай если будут тормоза)
А "рекомендации аналитика" передавать через Глобальные переменные.
*
№2 и №3 интересны тем, что есть возможность отключать трал
на отдельных инструментах...
Однако, это уже полуручная работа + множество советников.
Некомильфо...
*
по №1
Работа советника построена таким образом, что инструменты жестко прописаны
скажем в буфере: string UseSym[]={"EURUSD","","",,,,""};
Не проблема создать и буфер "блокировки", скажем: string UNuseSym[]={"EURUSD","","",,,,""};
Есть ли вожможность добавть "проверку на отсутстствие в чёрном списке" для оператора IF ?
{for (int i=0; i<OrdersTotal(); i++) {if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {if (OrderSymbol()==Symbol()) {if (нет в чёрном списке) ...
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
ИНТРО.
Есть желание работать исключительно "внутри дня".
Для чего пишу свой советник...
Трейдинг несложен, десяток инструментов, причём не все сразу,
одна-две сделки на инструмент, вначале дня открываю, тралится,
перед ролловером всё закрывается в принудительном порядке...
*
Основной вопрос по трейлингу, точнее КАК будет лучше его развести.
Ибо как известно в момент времени можно послать один приказ...
Вижу три варианта перекладывания стратегии в код:
*
1. Один общий на всё советник, где трейлинг обрабатывается скажем Кимовским тралом.
2. Разнести трал несколькими советниками с параметром тралить "свои символы"
3. Разнести стратегию по своим инструментам со своим тралом...
*
Работаю пока над вариантом №1, однако по №2 и №3 смутные терзают сомнения насчёт
чёткости отработки если применить "семафор" скажем по свободному потоку:
if(IsTradeContextBusy()) Print("Торговый поток занят. Подождите");
//Возвращается TRUE, если поток для выполнения торговых операций занят, иначе возвращает FALSE.
дожидаясь следуюего(щих) тика возможны большие задерки и пропуски приказов...