Советник не видит ордер - почему? - страница 3

 

 Поставте принт перед прверкой

Print (OrderTicket()+"   "+OrderType()) ;

if(OrderType()==OP_BUY) 

{
if (modSL>OrderStopLoss()) {

 

и посмотрите какой тикет и почему не Бай 

 

Вставил Print (OrderTicket()+" "+OrderType()) ; перед прверкойю Получил результат.

2010.06.22 16:01:48 2010.01.14 15:57 ea_v6 GBPUSD,M5: 17 1

С тикетом 17 в программе селл-ордер с магик_1, открытый по рынку в соответствие с алгоритмом.

Он и ранее виден был, в отличие от бая с магик_1 и типом ордера - 0.

 

Есть еще одна особенность.

До проверки в циклах я ищу этот бай с магик_1 в отделной функции и все данные о нем получаю и храню в переменных. Т.е я могу прописать трейлинг для него выбрав его явно по тикету, но вопрос в том: почему при, скажем так, стандартной опреации перебора списка существующих ордеров программа его не видит?

 

Вставил Print (OrderTicket()+" "+OrderType()) ; перед прверкой на магик_1. Тот же результата - не видит, не печатает данных по бай-магик_1.

У меня в коде, во втором цикле, после опреатора for и OrderSelect, следующим за ним стоит Print("OrderTicket() = ",OrderTicket()," OrderType() = ",OrderType()," OrderMagicNumber() = ",OrderMagicNumber()); но и здесь не принтуется ничего для бай-магик_1, а селл-магик_1 - без проблем принтует в журнале!!!

Допускаю, что программа не видит (не получает) значение именно ТИКЕТА в этом случае, иначе как такое объяснить? В тестере его видим он открыт, а найти не можем!

Может кто из разработчиков выскажет мнение по этому вопросу?

 

Приведите все таки полный код.

 

Для чего полный код? Я бы не хотел выкладывать всю программу. Ведь проблему я описал. Не работает только данный участок, где я пытаюсь, в конкретный момент времени, определить могу провести модификацию ордеров, предварительно их выбрав из списка существующих. Отсальная часть работает как и планировалось.

Я даже допустить не мог, что может в этом месте, поиск ордера по условию, появиться ПОДОБНАЯ проблема!

 
alexnau:

Вставил Print (OrderTicket()+" "+OrderType()) ; перед прверкой на магик_1. Тот же результата - не видит, не печатает данных по бай-магик_1.

У меня в коде, во втором цикле, после опреатора for и OrderSelect, следующим за ним стоит Print("OrderTicket() = ",OrderTicket()," OrderType() = ",OrderType()," OrderMagicNumber() = ",OrderMagicNumber()); но и здесь не принтуется ничего для бай-магик_1, а селл-магик_1 - без проблем принтует в журнале!!!

Допускаю, что программа не видит (не получает) значение именно ТИКЕТА в этом случае, иначе как такое объяснить? В тестере его видим он открыт, а найти не можем!

Может кто из разработчиков выскажет мнение по этому вопросу?


не умеете - так точнее.

Да все экстрасенсы разъехались, к сожалению.

Допускаю такой вариант развития событий: еще пару-тройку постов без кода и вообще вряд ли кто будет сюда постить, ну кроме вас, разумеется.

 

Последний билд МТ4 - это 226?

Если да, то я использую МТ4 именно такой. Просто

alexnau:

Для чего полный код? Я бы не хотел выкладывать всю программу. Ведь проблему я описал. Не работает только данный участок, где я пытаюсь, в конкретный момент времени, определить могу провести модификацию ордеров, предварительно их выбрав из списка существующих. Отсальная часть работает как и планировалось.

Я даже допустить не мог, что может в этом месте, поиск ордера по условию, появиться ПОДОБНАЯ проблема!

Непонятно почему программе виден селл-ордер с магик_1, а бай-ордер с магик_1 не виден? Но при я вном выборе бай-ордера с маги_1, через его тикет, я получаю о нем всю информацию!
 

Так по тому куску кода были сказаны все ошибки, которые там есть. Неизвестно вы их исправили или нет.

Можете обратиться к любому из тех людей, кто вам помогал, в личку, предоставив возможность просмотра кода только одному, тому, кому доверите свое детище.

Просто так можно до бесконечности продолжать.

 
VladislavVG:

не умеете - так точнее.

Да все экстрасенсы разъехались, к сожалению.

Допускаю такой вариант развития событий: еще пару-тройку постов без кода и вообще вряд ли кто будет сюда постить, ну кроме вас, разумеется.


Код посмотрите на первой странице.