Советник закрывает сделки, когда он увеличит Эквити на n долларов. Как реализовать, если в соседнем окне работает другой советник. Советник должен учитывать только свое увеличение эквити. - страница 3
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Речь ведь шла только о смене таймфрейма.
И я о том-же. Надо проверять поведение при смене ТФ учитывая что при применении шаблона, несмотря на то, что есть в перечислении причин, функция возвращает не то что хотелось увидеть. В OnDeinit() получаем смену шаблона, а в OnInit() новую загрузку индикатора. Как будет при смене ТФ и\или в советнике, надо проверять. Если уже проверено, снимаю шляпу и не спорю...
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Советник закрывает сделки, когда он увеличит Эквити на n долларов. Как реализовать, если в соседнем окне работает другой советник. Советник должен учитывать только свое увеличение эквити.
Ihor Herasko, 2018.01.12 14:55
Это можно сделать самому:
В советнике больше ничего и не нужно. А вот в индикаторе потребуется еще сохранение значений всех глобальных переменных индикатора, включая prev_calculated и rates_total, используемых в OnCalculate().
Но #property not_pereinitialization_change_timefrime все равно лучше)))
В советнике, или в функции OrderSend(). или в циклах не указаны магик-номера ордеров и он закрывает все подряд, то есть, все какие будут находиться в терминале. Может я ошибаюсь, но вам надо обратиться к программисту и он посмотрит код и устранит этот недостаток, а если в другом окне, с другой валютной парой работает тот-же советник, то обращаться ни куда не надо; программисты умные люди; Вам в настройках, прежде чем ставить надо на каждой паре куда будете ставить советника - менять магик-номер, что бы один работал только со своими ордерами, а тот-же самый советник, но на другой валютной паре - работал уже со своими магик-ордерами. И все. Как-то так?!
Или сделать условия и указать где идет увеличение if(... ... ... && OrderMagicNumber()==Magic) и все, он будет работать только с этим магическим номером. Как-то так?!
И где функция OrderClose() перед ней в цикле, выше нее надо в условиях прописать и указать магик-номер и он будет закрывать ордера только с этим магиком.
Вы новерно не понимаете зачем нужен магик-номер?! Укажите его в условиях и все. К примеру: if(Ask>ma && OrderMagicNumber()==Magic_1){ticket=0} if(Ask<ma && OrderMagicNumber()==Magic_2){ticket=1} if(OrderSelect(OrderTicket(),SELECT_BU_TICKET)){if(ticket==1){OrderClose(OrderTicket(),OrderLots(),Bid,Slippage,Black);}} Я даже ордер магик не указал, так как я его ранее в условиях указал и закроется ордер где тикет будет равен единице, то есть, ордер с Magic_2, а тот так и будет висеть.
Извините конечно, но у Вас нарушена логика в мышлении. Это сложно. Вы сами себе закручиваете гайки. Программирование - все на много проще. Поймите одно, если Вы не будете разбираться в основах, то и дальше лесть не стоит, закапаетесь и утонете совсем. К примеру: попробуйте написать условие исключающее "или" и обосновать его логически и это побитовая история, значит тут надо еще знать сколько те, или иные переменные вмещают в себе бит. Можете написать и скомпилировать, но это условие у Вас не будет работать. Значит, прежде чем лесть в дебри, разберитесь хотя бы с этим. Удачи.
Извините конечно, но у Вас нарушена логика в мышлении. Это сложно. Вы сами себе закручиваете гайки. Программирование - все на много проще. Поймите одно, если Вы не будете разбираться в основах, то и дальше лесть не стоит, закапаетесь и утонете совсем. К примеру: попробуйте написать условие исключающее "или" и обосновать его логически и это побитовая история, значит тут надо еще знать сколько те, или иные переменные вмещают в себе бит. Можете написать и скомпилировать, но это условие у Вас не будет работать. Значит, прежде чем лесть в дебри, разберитесь хотя бы с этим. Удачи.
Да проконает, извени, я до конца только что прочитал. Укажешь магик и проконает. У меня есть советник который работает с тремя магиками и ордера и все что происходит, для каждого магика все отдельно. Лебеди в одну сторону, утки в другую, а коты сами по себе. Извини.