วันพฤหัสบดีที่ 25 พฤษภาคม พ.ศ. 2560

ส่วนหนึ่งของ EA หาราคาต่ำสุด, สูงสุด ตามช่วงเวลาที่ต้องการ

extern string periodBegin   ="00:00";
extern string periodEnd     ="02:15";
extern string BoxEnd        ="02:15";
extern int    BoxBreakOut_Offset=0;

datetime dtTradeDate=TimeCurrent();
double   dPriceHigh,  dPriceLow;

int start()
  {
   getPriceHighLow();
   if (AlertDelay()) Alert("High price = ",dPriceHigh,"   Low price = ",dPriceLow);
   return(0);
  }
  
bool AlertDelay() 
  {
   static datetime last_time;
   if (TimeCurrent()-last_time<30 0="" 30="" boxend="" datetime="" delay="" dpricehigh="High[Highest(NULL," dpricelow="Low" dttimebegin="" dttimeend="" dttimeobjend="StrToTime(TimeToStr(dtTradeDate," else="" false="" for="" getpricehighlow="" ibarbegin-ibarend="" ibarbegin="iBarShift(NULL," ibarend="" int="" last_time="TimeCurrent();" mode_high="" mode_low="" owest="" periodbegin="" periodend="" pre="" return="" seconds="" time_date="" true="" void="">

1 ความคิดเห็น:

  1. ตัดที่ไม่จำเป็นออกก็เหลือสั้นลง
    extern string periodBegin ="00:00";
    extern string periodEnd ="02:15";
    datetime dtTradeDate=TimeCurrent();
    double dPriceHigh, dPriceLow;
    void getPriceHighLow()
    {
    datetime dtTimeBegin, dtTimeEnd ;
    int iBarBegin, iBarEnd;
    dtTimeBegin=StrToTime(TimeToStr(dtTradeDate, TIME_DATE) + " " + periodBegin);
    dtTimeEnd=StrToTime(TimeToStr(dtTradeDate, TIME_DATE) + " " + periodEnd);
    iBarBegin=iBarShift(NULL, 0, dtTimeBegin);
    iBarEnd=iBarShift(NULL, 0, dtTimeEnd);
    dPriceHigh=High[Highest(NULL, 0, MODE_HIGH, iBarBegin-iBarEnd, iBarEnd)];
    dPriceLow=Low [Lowest (NULL, 0, MODE_LOW , iBarBegin-iBarEnd, iBarEnd)];
    }

    ตอบลบ