Author Archive

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

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

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: ,