К разработчикам. Реал-тайм индикатор - страница 5

 
Фьючерсные объемы для МТ:
$50 будет вам стоить час моей работы. Я могу это сделать, поверьте.
:), а сколько часов потребуется?
 
Михаил:
:), а сколько часов потребуется?
Много. Очень много. Вы ведь хотите полнофункциональную индикаторную систему.
 
Фьючерсные объемы для МТ:
Много. Очень много. Вы ведь хотите полнофункциональную индикаторную систему.

Вот поэтому проще попросить разработчиков сделать изменения! :)

Мне тоже совсем не хочется тратить много, очень много времени

(возможно, много больше, чем Вам)...

 

Забавно. Если разработчики пойдут на это, мне придётся переделывать свой индикатор под такие возможности. Но, я за!

Сейчас использую отдельные буферы для расчётов и индикации.  

Хотя, имхо, не пойдут. 

 

Конечно, это решать ребятам из MQ...

Но представляете, если сделают, то

код реал-тайм индикатора будет выглядеть так:

//+------------------------------------------------------------------+
// Custom indicator book event function                              |
//+------------------------------------------------------------------+
void OnBookEvent( const string& a_symbol )
{
  double sell_price, buy_price;
//---  
  if ( a_symbol == _Symbol )
  {
    GetStakanValues( _Symbol, sell_price, buy_price );
    
    int buff_size = ArraySize( AskBuffer );
    
    if ( buff_size >= INT_MAX - 1 )               //Начинаем заполнять буферы с самого начала  
    {                                             //предыдущие значения можем сохранить в файл
      ArrayResize( AskBuffer, 1 );
      ArrayResize( BidBuffer, 1 );
    }
    else
    {
      ArrayResize( AskBuffer, buff_size + 1 );
      ArrayResize( BidBuffer, buff_size + 1 );
    }  
    AskBuffer[0] = sell_price;                       
    BidBuffer[0] = buy_price;
    Paint();                                      //Отображаем данные
  }
}

 И ВСЁ!

Работать будет, при каждом изменении стакана(ничего не теряется).

Данные в буферы заносятся супербыстро (всего одно, последнее значение)!

Настоящий реал-тайм из трёх строчек кода!!! 

 

Виден продход не!программиста :-)

Рисайзить массив на каждом изменении стакана - это жёстко...

 
Dennis Kirichenko:

Виден продход не!программиста :-)

Рисайзить массив на каждом изменении стакана - это жёстко...

Ответьте мне, программист, что быстрее рисайзить буфер или сдвигать значения буфера размером INT_MAX на 1?

 
Михаил:
Ответьте мне, программист, что быстрее рисайзить буфер или сдвигать значения буфера размером INT_MAX на 1?

А Вы это к чему? Ах, да... и то и другое не есть гуд...

Я не сравнивал подходы... просто анализ Вашего кода... его можно сделать более оптимальным...

 
Dennis Kirichenko:

А Вы это к чему? Ах, да... и то и другое не есть гуд...

Я не сравнивал подходы... просто анализ Вашего кода... его можно сделать более оптимальным...

Я исхожу из того, что есть.

Для того что бы (если разработчики согласятся сделать изменения) свести работу разработчиков 

К МИНИМУМУ. 

 
Без шансов даже на обсуждение.