Как кодировать? - страница 189

 
Big Be:
Я верю, что это можно сделать, и я верю, что смогу это сделать. Большинство задач у меня уже есть в моем собственном длинном советнике. Это не будет дешево, потому что я ценю свое время. Big Be

Big Be, не могли бы вы отправить мне письмо по электронной почте h.stilyanov@abv.bg с вашим предложением.

Спасибо

 
InTrance:
Вы должны сделать это с помощью dll.

Спасибо за сообщение, InTrance.

Вы имеете в виду, что это невозможно реализовать только советником и мне придется использовать другое программное обеспечение?

Я не очень хорошо знаю о связи между MT4 и другими программами.

Если возможно, подскажите, пожалуйста, что мне делать?

 

iBarShift() / TimeCurrent() помощь

Привет всем,

Я создаю индикатор, который выводит на график лондонский open / close / high / range и другие вещи.

Проблема, с которой я столкнулся, заключается в следующем, поскольку у нас есть новый бар, скажем, каждый 1 час. Попытка заставить сдвиг иметь цену открытия Лондона невозможна. Также я попробовал функцию iBarShift(), но не преуспел в этом. Я знаю, что должен быть способ сделать это (скорее всего, комбинация iBarShift() и timeCurrent() ), но пока не придумал. Есть какие-нибудь предложения?

Thx

 
Dax:
Здравствуйте.

Я хотел бы открыть всплывающее окно торговли с помощью советника.

Возможно ли это?

Если возможно открыть его советником, то возможно ли открыть торговое всплывающее окно, на котором количество торгуемого объема (количество лота) устанавливается на число, заказанное советником?

Отметьте "Запрашивать ручное подтверждение" в Tools->Options->Expert Advisors и закодируйте OrderSend(...) в вашем советнике. Когда наступят условия, вы увидите торговое окно.

 
paradiseview:
Всем привет,

Я создаю индикатор, который выводит на график лондонское открытие / закрытие / максимум / диапазон и другие вещи.

Проблема, с которой я столкнулся, заключается в следующем, поскольку у нас есть новый бар, скажем, каждый 1 час. Попытка заставить сдвиг иметь цену открытия Лондона невозможна. Также я попробовал функцию iBarShift(), но не преуспел в этом. Я знаю, что должен быть способ сделать это (скорее всего, комбинация iBarShift() и timeCurrent() ), но пока не придумал. Есть какие-нибудь предложения?

Спасибо

Я не понимаю эту часть "Попытка заставить сдвиг иметь цену открытия Лондона невозможна". Не могли бы вы описать подробнее? Может быть, я смогу помочь.

 
Roger09:
Отметьте в Tools->Options->Expert Advisors "Ask manual confirmation" и закодируйте OrderSend(...) в вашем советнике. Когда наступят условия, вы увидите торговое окно.

Спасибо, Roger09!

Торговое окно работает хорошо.

Я хотел бы задать еще один вопрос.

Я планирую торговлю на скальпинге.

Я установил советника и "запрашиваю ручное подтверждение", как вы мне показали.

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

Но советник не реагирует до тех пор, пока рынок не движется на графике недавно после того, как я нажал на кнопку.

То есть, торговое окно не открывается до тех пор, пока рынок не продвинулся ни на шаг.

Возможно ли решить эту проблему?

 
fosgate_r:
Я не понимаю эту часть "Попытка заставить сдвиг иметь лондонскую цену открытия невозможна". Не могли бы вы описать подробнее? Возможно, я смогу помочь.

Эй, Фосгейт,

Допустим, мы находимся в 12:00, а london open в 08:00. Чтобы получить цену открытия Лондона, есть несколько способов сделать это:

int open1= iMA(NULL,PERIOD_H1,4,test1,MODE_SMA,PRICE_OPEN,0);

другой способ сделать это:

double Open[4];

также другой способ:

iOpen(NULL,PERIOD_H1,4);

Все эти методы дадут мне лондонскую цену открытия. Теперь проблема в том, что как только мы окажемся в 13:00, они дадут мне цену открытия в 09:00, а не в 08:00 (что мне и нужно).

Другими словами, в 13:00 сдвиг должен измениться на 5, а не на 4.

Надеюсь, я был понятен

tc

 

Используйте iBarShift для получения правильного сдвига, а затем просто используйте iOpen. Пример в файле справки показывает, как получить нужный бар...

datetime some_time=D'2004.03.21 12:00';

int shift=iBarShift("EUROUSD",PERIOD_M1,some_time);

Print("сдвиг бара с временем открытия ",TimeToStr(some_time)," это ",shift);

Просто собрал это вместе, чтобы показать вам, как это делается...

string sDate = TimeToStr(TimeCurrent(), TIME_DATE);

datetime dtTenToday = StrToTime(sDate + " 10:00");

Print("Bar shift " + iBarShift(Symbol(), PERIOD_H1, dtTenToday) + " was the last 10:00 bar");

Lux

 
 
Файлы:
1hfib2.mq4  5 kb
Причина обращения: