Индикаторы: Тиковый график на любом таймфрейме.

 

Тиковый график на любом таймфрейме.:

Тиковый график рисуется в подокне на любом таймфрейме в онлайн режиме.

Author: Mechta

 

Неправильный, нехороший код. Надо так:

double b=Close[0];
И даже так будет терять тики от особенностей их прихода. Часто они приходят пачками. Всё тики в пачке будут потеряны, кроме последнего.
 
У Rosh-а есть не плохой тиковик. зачем было дублировать?
 
Zhunko:

Неправильный, нехороший код. Надо так:

double b=Close[0];
И даже так будет терять тики от особенностей их прихода. Часто они приходят пачками. Всё тики в пачке будут потеряны, кроме последнего.

Попробуйте запустить в следующем подокне вот такую штуку:

#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 Aqua
double x[];
double time1,time2;
int init()

{
IndicatorBuffers(1);
SetIndexStyle(0,DRAW_LINE);
SetIndexBuffer(0,x);
SetIndexDrawBegin(0,0);
SetIndexLabel(0,"x");
SetIndexShift(0,0);
time1=GetTickCount();
return(0);
}

int start()
{
int j;
double t;
time2=GetTickCount();
t=time2-time1;
Alert("Время между тиками(мсек) = ",t);
x[0]=MathLog(t);
time1=time2;
for(j=2000;j>=1;j--){x[j]=x[j-1];}
return(0);

}

Если будете внимательны, то заметите, что временные расстояния между тиками кратны 16 мсек (правда за счет всевозможных флуктуаций может встречаться и число 15). Т.е. возможные времена: 15,16,31,32,47,48 и т.д., но никаких других времен вы не увидите. Не могу точно сказать почему это происходит, возможно это аппаратные особенности серверов. Бывает еще встречается интервал времени равный 0. Да, вы правы, бывают пачки тиков с одной и той же ценой, но они все ловятся.

 
vladimirgladun:
Zhunko:

Неправильный, нехороший код. Надо так:

double b=Close[0];
И даже так будет терять тики от особенностей их прихода. Часто они приходят пачками. Всё тики в пачке будут потеряны, кроме последнего.

Да, вы правы, бывают пачки тиков с одной и той же ценой, но они все ловятся.

Как Вы их ловите? Ни один из тиков в пачке не отобразится, кроме последнего. Можно сравнить со штатным окном тиков.

Единственный вариант взять тики из пачки - DDE. Есть ещё один не очень хороший вариант - экстраполировать пропавшие тики.

И однозначно, нельзя ловить тики в индикаторе. Только в эксперте!!! При чём, эксперт должен быть освобождён от всех остальных операций. Только ловит и передаёт в память.

==========

На счёт квантования времени прихода тиков... Интересно... Не знал.

 
а как сделать что б одновременно и Ask отображался???
Причина обращения: