здравствуйте все! у меня вопрос к экспертам подскажите как узнать значение любого пользовательского индикатора на последнем тике и предпоследнем тике ?
заранее спасибо
Здравствуйте! При помощи CopyTick() скопируйте в массив эти два тика в формате MqlTick, а затем при помощи структуры для получения текущих цен (MqlTick) возьмите любое нужное Вам значение:
structMqlTick
{
datetime time; // Время последнего обновления ценdouble bid; // Текущая цена Biddouble ask; // Текущая цена Askdouble last; // Текущая цена последней сделки (Last)ulong volume; // Объем для текущей цены Lastlong time_msc; // Время последнего обновления цен в миллисекундахuint flags; // Флаги тиковdouble volume_real; // Объем для текущей цены Last c повышенной точностью
};
Здравствуйте! При помощи CopyTick() скопируйте в массив эти два тика в формате MqlTick, а затем при помощи структуры для получения текущих цен (MqlTick) возьмите любое нужное Вам значение:
С уважением, Владимир.
Это не поможет. Вопрос о значении индикатора, а это нигде не фиксируется. Только последнее значение нв баре.
Это не поможет. Вопрос о значении индикатора, а это нигде не фиксируется. Только последнее значение нв баре.
Привет, Алексей! Точно, речь шла о значении индикатора, а не просто о тиках. Учиться, учиться и ещё раз учиться... :)
А если CopyBuffer() использовать?
CopyBuffer
Получает в массив buffer данные указанного буфера указанного индикатора в указанном количестве.
int CopyBuffer(intindicator_handle, // handle индикатораintbuffer_num, // номер буфера индикатораintstart_pos, // откуда начнем intcount, // сколько копируемdoublebuffer[]// массив, куда будут скопированы данные );
Hello, Greeting,I want to change a number according to the changes in the prices of ask and bid. It means that, for example, for every twopoint changein each of these two ask and bid prices, my number changes by one point, just like what happens in the trail of a position. Can you tell which part of this code has a problem?
void OnTick()
{
X = NormalizeDouble(iClose(_Symbol, 0, 10), _Digits);
Hello, Greeting,I want to change a number according to the changes in the prices of ask and bid. It means that, for example, for every twopoint changein each of these two ask and bid prices, my number changes by one point, just like what happens in the trail of a position. Can you tell which part of this code has a problem?
Every new tick "X" again =NormalizeDouble(iClose(_Symbol, 0, 10), _Digits);
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
здравствуйте все! у меня вопрос к экспертам подскажите как узнать значение любого пользовательского индикатора на последнем тике и предпоследнем тике ?
заранее спасибо
Здравствуйте! При помощи CopyTick() скопируйте в массив эти два тика в формате MqlTick, а затем при помощи структуры для получения текущих цен (MqlTick) возьмите любое нужное Вам значение:
С уважением, Владимир.
В функции iCustom получается по барам,а нужно по тикам
Здравствуйте! При помощи CopyTick() скопируйте в массив эти два тика в формате MqlTick, а затем при помощи структуры для получения текущих цен (MqlTick) возьмите любое нужное Вам значение:
С уважением, Владимир.
Это не поможет. Вопрос о значении индикатора, а это нигде не фиксируется. Только последнее значение нв баре.
Это не поможет. Вопрос о значении индикатора, а это нигде не фиксируется. Только последнее значение нв баре.
Привет, Алексей! Точно, речь шла о значении индикатора, а не просто о тиках. Учиться, учиться и ещё раз учиться... :)
А если CopyBuffer() использовать?
С уважением, Владимир.
Привет, Алексей! Точно, речь шла о значении индикатора, а не просто о тиках. Учиться, учиться и ещё раз учиться... :)
А если CopyBuffer() использовать?
С уважением, Владимир.
Ответьте себе на вопрос: Что будет копироваться в массив?
Уже ответил. Не тики, а бары...
С уважением, Владимир.
Hello, Greeting, I want to change a number according to the changes in the prices of ask and bid. It means that, for example, for every two point change in each of these two ask and bid prices, my number changes by one point, just like what happens in the trail of a position. Can you tell which part of this code has a problem?
void OnTick()
{
X = NormalizeDouble(iClose(_Symbol, 0, 10), _Digits);
if(Ask + 2 * _Point < X)
{
X -= 2 * _Point;
Print("", Ask);
Print("1 ===>>>> X: ", X);
}
if(Bid - 2 * _Point > X)
{
X += 1 * _Point;
Print("", Bid);
Print("2 ===>>>> X: ", X);
}
}
Hello, Greeting, I want to change a number according to the changes in the prices of ask and bid. It means that, for example, for every two point change in each of these two ask and bid prices, my number changes by one point, just like what happens in the trail of a position. Can you tell which part of this code has a problem?
Every new tick "X" again =NormalizeDouble(iClose(_Symbol, 0, 10), _Digits);