В чем здесь проблема??? - страница 2

 

To extern.fx.

Короче вот класс нормально работающий со стандартным индюком.

Самопальный индюк он на отрез отказался подцеплять (не в курсе я по чему, а разбираться некогда).

Нужно сравнить оба индюка, а заодно поинтересоваться серийностью в классе (нужна или нет)...


Пример вызова из блока инициализации

int OnInit()
{
//----------------------------------------------------------------------------//
//Work variables
double Open, High, Low, Close;
//----------------------------------------------------------------------------//

//Выполнение дополнительного конструктора
HeikenAshi.Create(_Symbol,_Period,32);
//Обновление данных
HeikenAshi.CopyData();
//Получение данных
Open  = HeikenAshi.GetOpen(0);
High  = HeikenAshi.GetHigh(0);
Low   = HeikenAshi.GetLow(0);
Close = HeikenAshi.GetClose(0);

Print("Bar 0: Open ",Open," High ",High," Low ",Low," Close ",Close);
//----------------------------------------------------------------------------//
return(0);
//----------------------------------------------------------------------------//
}

Файлы:
 
Блин, вот лажа... Никак понять не могу
Interesting:

Немного о серийности массивов

Получаем дату 0 бара в истории.

Без указания что массив серия    - 1993.05.13 00:00:00

С указанием серийности массива - 2010.08.06 20:00:00

Чувствуете разницу?


Чувствую... Попробую перегрузку CopyBuffer по дате...
 
bool HeikenAshi::Create(string _symbol,ENUM_TIMEFRAMES _timeframe)
{
   symbol = _symbol;
   timeframe = _timeframe;
   handle = iCustom( symbol, timeframe, "Examples\\Heiken_Ashi" );
   if( handle < 0 )
   {
      Print( "Ошибка при инициализации Heiken Ashi #: ", GetLastError() );
      return( false );
   }
   else Print( "Heiken Ashi Handle: ", handle );
   
   if( CopyBuffer( handle, 0, TimeCurrent() - 32 *_Period, TimeCurrent(), open ) < 0 )
   {
      Print( "Ошибка при копировании open[] #:", GetLastError() );
      return( false );
   }
   
   if( CopyBuffer( handle, 1, TimeCurrent() - 32 *_Period, TimeCurrent(), high ) < 0)
   {
      Print( "Ошибка при копировании open[] #:", GetLastError() );
      return( false );
   }
   
   if( CopyBuffer( handle, 2, TimeCurrent() - 32 *_Period, TimeCurrent(), low ) < 0 )
   {
      Print( "Ошибка при копировании open[] #:", GetLastError() );
      return( false );
   }
   
   if( CopyBuffer( handle, 3, TimeCurrent() - 32 *_Period, TimeCurrent(), close ) < 0 )
   {
      Print( "Ошибка при копировании open[] #:", GetLastError() );
      return( false );
   }
   return( true );
}
Попробовал так... Что-то стало не легче... =)
 
Interesting:

To extern.fx.

Короче вот класс нормально работающий со стандартным индюком.

Самопальный индюк он на отрез отказался подцеплять (не в курсе я по чему, а разбираться некогда).

Нужно сравнить оба индюка, а заодно поинтересоваться серийностью в классе (нужна или нет)...


Пример вызова из блока инициализации


Спасибо... Повожусь еще... А так СПАСИБО... =)
Причина обращения: