Сделала счетчик тиков для mt4.
Вопрос: Почему количество тиков, на моем индикаторе не соответствует объему индикатора Volumes (из штатной поставки MT4)???
Код:
#property link "https://www.mql5.com"
#property version "1.00"
#property strict
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 clrGreen
#property indicator_width1 3
double mas[9];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int OnInit()
{IndicatorSetInteger( INDICATOR_DIGITS,0);
SetIndexStyle(0,DRAW_HISTOGRAM);
SetIndexBuffer(0,mas);
SetIndexEmptyValue(0,0);
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
const int prev_calculated,
const datetime &time[],
const double &open[],
const double &high[],
const double &low[],
const double &close[],
const long &tick_volume[],
const long &volume[],
const int &spread[])
{
mas[0]++;
return(rates_total);
}
А как вы сравниваете, на глазок? Сравнивайте с iVolume(...). Второе, где обнуление mas[0] в начале нового бара? Третье, возможно, вы не знаете, что при переключении таймфрейма в индикаторах обнуляются глобальные переменные и происходит вызов OnInit.
Вы приведите полный код, как и где вы mas[0] выводите на печать, а мы напрягемся и поможем ))
Сюрпиз : кол-во тиков и тиковый объём это разные вещи :-)
Я тоже не знаю. Расскажите.
тут полфорума забито этой истоптанной темой - эпопея CopyTicks покруче "приключений Петрова и Васечкина", читайте там..
Кратко для ТС: Volume это тиковый объём от сервера и он не равен (и обычно больше) чем число тиков которые в реальном времени обрабатывает терминал.
Плюс к сведению ТС: OnCalculate может быть вызван вообще без тика от сервера :-)
тут полфорума забито этой истоптанной темой - эпопея CopyTicks покруче "приключений Петрова и Васечкина", читайте там..
Кратко для ТС: Volume это тиковый объём от сервера и он не равен (и обычно больше) чем число тиков которые в реальном времени обрабатывает терминал.
Плюс к сведению ТС: OnCalculate может быть вызван вообще без тика от сервера :-)
Я думал что-то другое.
Плюс к сведению ТС: OnCalculate может быть вызван вообще без тика от сервера :-)
Если пользоватемем как функция - понятно. Возможно запуском программы (типа как индикаторы). А чем еще?
Я думал что-то другое.
Плюс к сведению ТС: OnCalculate может быть вызван вообще без тика от сервера :-)
Если пользоватемем как функция - понятно. Возможно запуском программы (типа как индикаторы). А чем еще?
подгрузка истории например.
не уверен (можно поставить эксперимент, но лень), на границе минутных баров также может случаться
Сделала счетчик тиков для mt4.
Вопрос: Почему количество тиков, на моем индикаторе не соответствует объему индикатора Volumes (из штатной поставки MT4)???
Код:
#property link "https://www.mql5.com"
#property version "1.00"
#property strict
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 clrGreen
#property indicator_width1 3
double mas[9];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int OnInit()
{IndicatorSetInteger( INDICATOR_DIGITS,0);
SetIndexStyle(0,DRAW_HISTOGRAM);
SetIndexBuffer(0,mas);
SetIndexEmptyValue(0,0);
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
const int prev_calculated,
const datetime &time[],
const double &open[],
const double &high[],
const double &low[],
const double &close[],
const long &tick_volume[],
const long &volume[],
const int &spread[])
{
mas[0]++;
return(rates_total);
}
Сделала счетчик тиков для mt4.
Вопрос: Почему количество тиков, на моем индикаторе не соответствует объему индикатора Volumes (из штатной поставки MT4)???
Код:
#property link "https://www.mql5.com"
#property version "1.00"
#property strict
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 clrGreen
#property indicator_width1 3
double mas[9];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int OnInit()
{IndicatorSetInteger( INDICATOR_DIGITS,0);
SetIndexStyle(0,DRAW_HISTOGRAM);
SetIndexBuffer(0,mas);
SetIndexEmptyValue(0,0);
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
const int prev_calculated,
const datetime &time[],
const double &open[],
const double &high[],
const double &low[],
const double &close[],
const long &tick_volume[],
const long &volume[],
const int &spread[])
{
mas[0]++;
return(rates_total);
}
Вы что хотите посчитать? Тиковый объем? А зачем?)
Если Вы хотите посчитать торговый объем - Вам в МТ5 и использовать CopyTicks(). Но, к сожалению, вряд ли Вы сможете правильно его подсчитать без потерь.
Вы что хотите посчитать? Тиковый объем? А зачем?)
Если Вы хотите посчитать торговый объем - Вам в МТ5 и использовать CopyTicks(). Но, к сожалению, вряд ли Вы сможете правильно его подсчитать без потерь.
Я хочу посчитать количество тиков которые пришли мне в терминал. Мой код правильный?
Если индикатора Volumes (из штатной поставки MT4) это тиковый который послал мне сервер, то почему происходит расхождение?
Получается тики либо не доходят до меня либо мой код не успевает их обрабатывать.

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Сделала счетчик тиков для mt4.
Вопрос: Почему количество тиков, на моем индикаторе не соответствует объему индикатора Volumes (из штатной поставки MT4)???
Код:
#property link "https://www.mql5.com"
#property version "1.00"
#property strict
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 clrGreen
#property indicator_width1 3
double mas[9];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int OnInit()
{IndicatorSetInteger( INDICATOR_DIGITS,0);
SetIndexStyle(0,DRAW_HISTOGRAM);
SetIndexBuffer(0,mas);
SetIndexEmptyValue(0,0);
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
const int prev_calculated,
const datetime &time[],
const double &open[],
const double &high[],
const double &low[],
const double &close[],
const long &tick_volume[],
const long &volume[],
const int &spread[])
{
mas[0]++;
return(rates_total);
}