Автор: Николай Камынин

 Определение интервала на графике реализуется по следующему алгоритму
Читается свеча по заданной дате и времени.
После этого время изменяется ( увелич или уменьшается) и читается следубшая свеча до тех пор пока время первой свечи и новой совпадают
При несовпадении Интервал равен разности времени новой свечи и первой.

FUNC  FIND_INTERVAL( ) ‘определение интервала на графике
   TEMP=start_time ‘ время начала сессии
     DATEBar=DateTrade ‘дата торгов
 FOR _J FROM 1 TO 240 ‘ поиск правой свечи от времени start_time
  MAP=Get_Candle_Ex (NameS,DATEBar,TEMP)
  IF MAP !=»»
  TEMP=0+GET_VALUE(MAP, «TIME») ‘время первой свечи
   IF TEMP==0
   INTERVAL_G=1440
   RETURN
   END IF
  BREAK
  END IF
  IncTIME(1) ‘время для графика смещаем на 1 мин вперед
  IF TEMP>stop_time
  INTERVAL_G=0
  RETURN
  END IF
  END FOR
‘——————
  HHMMSS_TO_MIN_SEC(TEMP)  ‘время в минуты’
    T0=MIN2 ‘ время в минуты
 FOR _J FROM 1 TO 240
    IncTIME(1) ‘время для графика смещаем на 1 мин вперед
  IF TEMP>Time_Last ‘ выход из цикла.время больше, чем время последней сделки
   INTERVAL_G=0  ‘ только один бар’
   RETURN
        END IF
 T1=0+GET_VALUE(Get_Candle_Ex (NameS,DATEBar,TEMP), «TIME») ‘время второй свечи
 HHMMSS_TO_MIN_SEC(T1) 
 T1=MIN2-T0 ‘ время в минуты
  IF T1>0 ‘ нашли интервал
   INTERVAL_G=T1  ‘ интервал графика в минутах
   RETURN
  END IF
 END FOR
END FUNC

Tags: ,

This entry was posted on Понедельник, 1 марта, 2010 at 18:24 and is filed under QUIK и QPILE, торговые роботы (МТС), Фондовый рынок. You can follow any responses to this entry through the RSS 2.0 feed. Both comments and pings are currently closed.

Comments are closed at this time.