Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 638
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Подскажите кто сталкивался и знает, как получить с этой строки:
29301441,1475681547,0,0.01,EURUSD,1.1207,0.0000,0.0000,1475690944,1.1213,0.00,0.00,0.60,,13134545
вот такую:
-118,120,-39,52,-58,-76,62,-66,-49,-97,-38,-86,-125,-52,-70,-96,89,-23,13,-91,111,74,-79,16,65,127,116,-76,99,5,27,48,42,44,55,-94,84,-72,-63,115,26,18,-47,-46,5,-55,32,68,114,-20,46,-7,79,7,82,78,-91,41,82,-114,121,112,-64,-106,35,-10,24,-128,58,-81,-69,92,34,79,64,-97,52,-95,127,-18,-46,104,104,85,56,93,8,100,14,-52,-88,-38,-28,-76,-49,35,-74,27,120,74,53,124,-104,-59,-1,41,-127,-99,103,104,-38,2,47,-93,68,35,-15,44,123,47,78,-117,15,-114,-46,-98,-108,-26,
Спасибо!
Добрый день.
Я сам не программист, но хочу сделать так чтоб из моих советников мне отправлялись емайл уведомления о сигналах. Задача простая, и вроде работает, но когда наступает условие для сигнала то отправляются бесконечное количество писем.
Помогите чтоб при каждом сигнале отправлялось только одно письмо.
Вот пример моего кода для обычной скользящей средней. Что добавить или исправить?
Добрый день.
Я сам не программист, но хочу сделать так чтоб из моих советников мне отправлялись емайл уведомления о сигналах. Задача простая, и вроде работает, но когда наступает условие для сигнала то отправляются бесконечное количество писем.
Помогите чтоб при каждом сигнале отправлялось только одно письмо.
Вот пример моего кода для обычной скользящей средней. Что добавить или исправить?
добавить datetime mailTime и запоминать время пред.отправки, чтобы повторно не отправлять письма
ps. пора уже переходить от start() к OnTick() в советниках
pps. mailTime надо ещё сохранять в глобальных переменных терминала на случай рестарта советника.
добавить datetime mailTime и запоминать время пред.отправки, чтобы повторно не отправлять письма
ps. пора уже переходить от start() к OnTick() в советниках
pps. mailTime надо ещё сохранять в глобальных переменных терминала на случай рестарта советника.
Не помогло. Так и шлет бесконечно письма.
Добрый день.
Я сам не программист, но хочу сделать так чтоб из моих советников мне отправлялись емайл уведомления о сигналах. Задача простая, и вроде работает, но когда наступает условие для сигнала то отправляются бесконечное количество писем.
Помогите чтоб при каждом сигнале отправлялось только одно письмо.
Вот пример моего кода для обычной скользящей средней. Что добавить или исправить?
static datetime TimeN=0;
С этим годом вообще не отправляются емейлы((
Так у вас чему ma равен? Это не машка на нулевом баре случайно?
ma=iMA(NULL,0,MovingPeriod,MovingShift,MODE_SMA,PRICE_CLOSE,0);
ma=iMA(NULL,0,MovingPeriod,MovingShift,MODE_SMA,PRICE_CLOSE,0);
Тогда все ясно. Машка на нулевом баре постоянно пересчитывается - поэтому сигналы будут приходить при каждом тике.
Попробуйте так:
static datetime TimeN=0;
int Signal=0;
int init()
{
return(0);
}
start()
{
//Операции выполняются только при появлении следующего бара
datetime TimeC=iTime(NULL,TF,0);
if(TimeN==0)TimeN=TimeC;
if(TimeN==TimeC && Signal==1) return;
TimeN=TimeC;
Signal=0;
//-----------------------------------------------------------------------------------------------------
// Сигналы
//-----------------------------------------------------------------------------------------------------
if(Open[1]>ma && Close[1]<ma)
{
bool res = SendMail("Сигнал", " Покупай");
Signal=1;
}
if(Open[1]<ma && Close[1]>ma)
{
SendMail("Сигнал", "Продавай");
Signal=1;
}
return(0);
}
Вообще, обычно делают сравнение
ma=iMA(NULL,0,MovingPeriod,MovingShift,MODE_SMA,PRICE_CLOSE,1);
ma>Open[0];
вторая строка - более чем похожа на массив signed char. То есть вся "строка" может быть просто бинарной структурой распечатанной побайтно, причём возможно её сначала зашифровали, поэтому 0 нет