[Архив!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 2. - страница 102

 
Vinin:


Примерно так

В массиве получаем количество, единиц, десятков, сотен и так далее

Нет, мне Вашим кодом пока сложно воспользоваться. Оставлю его в архиве до лучших времен, так сказать, "на вырост".

Однако, в Вашем варианте привлек внимание цикл while, в котором Вы поместили N (tmpl).

Могу ли я сделать тоже самое, т.е. применить while в своем вышеприведенном коде (стр.100), установив его над циклами for?

 

robot:


я что то не понимаю наверное, программа которая работает на тестере - должна по логике, должна, так же выставлять ордера и на реале.

Нет, она никому ничего не должна. Есть разница между демо-реалом и тестером. Например, тестер никогда не выдаст ошибку при открытии ордеров, если все параметры OrderSend() корректны. А торговый сервер запросто может выдать.

Поэтому программы после тестера необходимо допиливать и потом гонять на демо, чтобы они могли адекватно обрабатывать исключительные ситуации, которых в тестере не бывает.

 
Sergey_Rogozin:

Нет, мне им пока сложно воспользоваться. Оставлю его в архиве до лучших времен, так сказать, "на вырост".

Однако, в Вашем варианте привлек внимание цикл while, в котором Вы поместили N (tmpl).

Могу ли я сделать тоже самое, т.е. применить while в своем вышеприведенном коде (стр.100), установив его над циклами for?


Я по большому счету сделал то, что вы хотели. Не более.

Да и использование циклов for() в вашем варианте будет выполняться относительно долго

Лучше от циклов for() отказаться. Цикл должен быть только один

 
Подскажите, как сделать так, чтобы советник отключался в определенное время?
 
Vinin:


Я по большому счету сделал то, что вы хотели. Не более.

Да и использование циклов for() в вашем варианте будет выполняться относительно долго

Лучше от циклов for() отказаться. Цикл должен быть только один

Спасибо, про циклы понял.

Буду осваивать новые горизонты - Ваш код.

 
render:
Подскажите, как сделать так, чтобы советник отключался в определенное время?
Если хотите, чтобы выгружался совсем, то средствами MQL никак. А просто чтобы переставал реагировать на рынок, то if(Time[0]>=заданное_время) return(0);
 

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

Кто нить сталкивался, как лечить?


 

В тестере ф-ия sleep() не работает, в таком случае как обойти этот момент... Я использую для инициации двух фигур (с одинаковым принципом построения), т.е. для отличия одной от другой для возможности их последующего сравнения запоминаю время образования первой и если время образования второй больше, то совершаю действия... Т.е сразу после образовании первой фигуры использую sleep(2000) для недопущения в этот же момент (в следующей же строке кода) - идентифицировать эту первую образованную как вторую тоже. Посоветуйте, что для этого можно использовать... Другими словами, чтобы после образования первой фигуры советник на секунду отдохнул, т.к. в следующей же строке идет контроль за формированием второй фигуры и без "отдыха" первая образованная инициализируется и как вторая тоже, а это не допустимо...

Сам (весь) вопрос здесь - стр 99.

 
alsu:
Обратите внимание - в вашем коде "If(Ticket>0)" означает "команда OrderSend отработала без ошибок", а "else" - это "при выполнении OrderSend возникла какая-то ошибка, и ордер не был выставлен". Вы подразумеваете именно такую логику?
Да, вы правильно заметили, что мой код вообще не соответствует тому, что я хочу в итоге получить!
Задумка была такая:
1. выставляю отложенный ордер (если выполнен торговый критерий)
2. если ордер не выполнился на текущем баре, ЖДЁМ, что выполнится на следующем баре
3. если на следующем баре не выполнился отложенный ордер, то удаляем его

альтернатива (хорошее стечение обстоятельств):
2. если ордер выполнился на текущем баре (1-й стоп лосс уже на месте), то следующие 3-и бара трейлим (Трейлинг по теням N последних баров)
3. дальше трейлим (удавкой)
альтернатива (плохое стечение обстоятельств)
2. если ордер выполнился и рынок идёт не так как надо, то делаем переворот

ПЛАНЫ КОНЕЧНО НАПОЛЕОНОВСКИЕ!!!, НО Я НОВИЧОК - И МНЕ ПОКА ОЧЕНЬ ТРУДНО "С ЯЗЫКОМ"
Если не трудно напишите какой нибудь шаблончик, а то у меня пока ум за разум заходит)

Спасибо за внимание
 
Roman.:

В тестере ф-ия sleep() не работает, в таком случае как обойти этот момент... Я использую для инициации двух фигур (с одинаковым принципом построения), т.е. для отличия одной от другой для возможности их последующего сравнения запоминаю время образования первой и если время образования второй больше, то совершаю действия... Т.е при образовании первой фигуры использую sleep(2000) для разграничения возможного последующего образования второй фигуры и ее идентификации именно как второй. Посоветуйте, что для этого можно использовать...

Сам (весь) вопрос здесь - стр 99.

Используйте время баров Time[x].
Причина обращения: