Я новичок в программировании на MT4, и мне было интересно, как я могу отменить отложенный ордер, если он не был заполнен до конца свечи? Я работаю у брокера ECN, поэтому его нельзя поместить в функцию OrderSend. Любые идеи очень приветствуются.
Я новичок в программировании на MT4, и мне было интересно, как я могу отменить отложенный ордер, если он не был заполнен до конца свечи? Я работаю у брокера ECN, поэтому его нельзя поместить в функцию OrderSend. Любые идеи очень приветствуются.
Существуют десятки советников, которые используют логику, зависящую от конца бара и т. д. Если вы просто посмотрите на Platform Tech, вы увидите пример:Originally Posted by ;
https://www.forex-russian.com/genera...endations.htmlТема: Есть ли интерьер, который копирует экран при открытии каждой свечи? В этой теме вы найдете ссылку на советник:
https://www.forex-russian.com/genera...ts-wisdom.htmlТеперь загляните в код того советника, который делает скриншот на каждой новой свече. Вставленный код if (barStart lt; Time#91;0#93/начало нового бара { string timeStamp = TimeToStr(TimeCurrent(), TIME_DATE|TIME_MINUTES); строка newstr = StringSetChar (timeStamp, 13, '_'); WindowScreenShot(FileName newstr .gif, 640, 480, -1, -1, chartType); barStart = Время#91;0#93;; } Скриншот не нужен, но тут есть то, что нужно для вашей логики: Вставляемый код if (barStart lt; Time#91;0#93/начало нового бара { barStart = Time#91; 0#93;; } Вам нужно определить переменную barStart. Его код тоже есть: Вставленный код datetime barStart = 0; С помощью этих фрагментов кода вы можете построить свою логику. Так я нахожу ответы на некоторые вопросы.
Нельзя хотя бы на MB. Я понимаю логику этой функции, но не знаю, как ее закодировать.
trumpjr: если бы это был не-ECN-брокер, вы могли бы рассчитать количество времени в периоде свечи, и это было бы параметром истечения срока действия. Если, как вы говорите, параметр истечения срока действия нельзя использовать на ECN-брокере (или это только тот, на котором вы работаете?), то вам потребуется советник, который отменит все отложенные ордера в конце свечи или определить функцию в вашем советнике. Это не может быть так сложно.Originally Posted by ;
trumpjr: кажется, что лучше всего установить параметр истечения срока действия функции OrderSend(), когда вы размещаете отложенный ордер.Originally Posted by ;
Я работаю с ECN-брокером, поэтому вы не можете использовать истечение срока действия для отправки ордера, плюс я не знаю, как вы могли бы отменить его в конце свечи. У кого еще есть идеи?
1 Приложение(я) Я создал этот советник с помощью fxdreema (попробуйте, они великолепны). Советник выставляет 2 отложенных ордера, стоп на покупку и стоп на продажу выше/ниже предыдущей свечи. Когда один ордер выполнен, другой ордер отменяется. В начале новой свечи все предыдущие отложенные ордера удаляются.
https://www.forex-russian.com/attach...1883379263.mq4