您現(xiàn)在的位置:程序化交易>> 外匯現(xiàn)貨>> MT5>> MT5知識>>正文內(nèi)容

如何獲得MT5指定時間周期的開盤價、收盤價、最高價、最低價? [MT4]

  • 這個問題要是在MT4里,簡直是基礎(chǔ)的不能再基礎(chǔ)的東西了,但是到了MT5里,卻是異常的復(fù)雜。
    要分兩種情況:
    1 在編寫指標里:
    是作為OnCalculate的參數(shù)帶來的如下代碼:
    復(fù)制代碼
    1. int OnCalculate (const int rates_total,
    2. const int prev_calculated,
    3. const datetime& time[], // Time
    4. const double& open[], // Open
    5. const double& high[], // High
    6. const double& low[], // Low
    7. const double& close[], // Close
    8. const long& tick_volume[], // Tick Volume
    9. const long& volume[], // Real Volume
    10. const int& spread[] // Spread
    11. );

    2 在EA里確實異常的復(fù)雜:
    首先我做了如下測試:
    復(fù)制代碼
    1. void OnTick()
    2. {
    3. double open,close,low,high;
    4. int Spread;
    5. open=SymbolInfoDouble(Symbol(),SYMBOL_ASK);//得到當前的ask價格
    6. close=SymbolInfoDouble(Symbol(),SYMBOL_BID);//得到當前的bid價格
    7. low=SymbolInfoDouble(Symbol(),SYMBOL_BIDLOW);//注意這里沒有時間段參數(shù),這里得到的是一天的最低價。
    8. high=SymbolInfoDouble(Symbol(),SYMBOL_BIDHIGH);//注意這里沒有時間段參數(shù),這里得到的是一天的最高價。
    9. }

    找了半天SymbolInfoDouble這個函數(shù)根本不能實現(xiàn)得到指定時間周期的open close low high 價格。
    后來我終于找到了解決方法,如下:
    如果系統(tǒng)沒有提供如何獲得指定周期的開盤,最低價,最低價,那么我只能自己寫一個函數(shù)來獲得了。
    iOpen(string symbol,ENUM_TIMEFRAMES timeframe,int index)//此函數(shù)是我構(gòu)造的,和MT4中系統(tǒng)自帶的iOpen 一樣用法。
    iOpen(Symbol(),PERIOD_MN1,0);//表示獲得最近一根月線的開盤價。


    iLow(string symbol,ENUM_TIMEFRAMES timeframe,int index)//此函數(shù)是我構(gòu)造的,和MT4中系統(tǒng)自帶的iLow 一樣用法。
    iLow(Symbol(),PERIOD_MN1,0);//表示獲得最近一根月線的最低價。

    iHigh(string symbol,ENUM_TIMEFRAMES timeframe,int index)//此函數(shù)是我構(gòu)造的,和MT4中系統(tǒng)自帶的iHigh 一樣用法。
    iHigh(Symbol(),PERIOD_MN1,0);//表示獲得最近一根月線的最高價。

    至于收盤價其實,和bid價格是一樣的所以完全就可以用系統(tǒng)自帶的SymbolInfoDouble(Symbol(),SYMBOL_BID)獲得。
    下面是完整的代碼:
    復(fù)制代碼
    1. #property copyright "2009, MetaQuotes Software Corp."
    2. #property link "http://www.mt5.net.cn"
    3. #property version "1.00"
    4. double Open[],High[],Low[];
    5. int OnInit()
    6. {
    7. return(0);
    8. }
    9. void OnDeinit(const int reason)
    10. {
    11. }
    12. void OnTick()
    13. {
    14. double open,close,low,high;
    15. open=iOpen(Symbol(),PERIOD_MN1,0); //表示獲得最近一根月線的開盤價。
    16. close=SymbolInfoDouble(Symbol(),SYMBOL_BID); //表示獲得最近一根月線的收盤價。
    17. low=iLow(Symbol(),PERIOD_MN1,0); //表示獲得最近一根月線的最低價。
    18. high=iHigh(Symbol(),PERIOD_MN1,0); //表示獲得最近一根月線的最高價。
    19. }
    20. double iOpen(string symbol,ENUM_TIMEFRAMES timeframe,int index)
    21. {
    22. double open=0;
    23. ArraySetAsSeries(Open,true);
    24. int copied=CopyOpen(symbol,timeframe,0,Bars(symbol,timeframe),Open); //將指定時間周期的開盤價格復(fù)制到指定數(shù)組。
    25. if(copied>0 && index<copied) open=Open[index];
    26. return(open);
    27. }
    28. double iLow(string symbol,ENUM_TIMEFRAMES timeframe,int index)
    29. {
    30. double low=0;
    31. ArraySetAsSeries(Low,true);
    32. int copied=CopyLow(symbol,timeframe,0,Bars(symbol,timeframe),Low);
    33. if(copied>0 && index<copied) low=Low[index];
    34. return(low);
    35. }
    36. double iHigh(string symbol,ENUM_TIMEFRAMES timeframe,int index)
    37. {
    38. double high=0;
    39. ArraySetAsSeries(High,true);
    40. int copied=CopyHigh(symbol,timeframe,0,Bars(symbol,timeframe),High);
    41. if(copied>0 && index<copied) high=High[index];
    42. return(high);
    43. }
    44. //+------------------------------------------------------------------+

    open,close,low,high.rar (1 K) 下载次数:75

【字體: 】【打印文章】【查看評論

相關(guān)文章

    沒有相關(guān)內(nèi)容
主站蜘蛛池模板: 色综合久久天天影视网| 欧美中文字幕在线| 老子影院伦不卡欧美| 看一级毛片免费观看视频| 日韩成人免费视频| 国产精品久久国产三级国不卡顿| 亚洲婷婷第一狠人综合精品| 精品免费久久久久久成人影院| 国产精品自产拍在线观看| 一二三四社区在线中文视频| 日本大乳高潮视频在线观看| 亚洲av日韩av无码av| 欧美激情一级二级三级在线视频| 国产一卡二卡3卡4卡四卡在线| 777奇米四色成人影视色区| 女仆的味道hd中字在线观看| 中文字幕精品无码亚洲字| 日韩免费一级毛片| 亚洲不卡在线观看| 欧美日韩国产另类在线观看| 亚洲精品欧美日韩| 狠狠色婷婷丁香综合久久韩国| 国产人妖ts视频在线观看| 哪个网站可以看毛片| 青梅竹马嗯哦ch| 国产成人精品无码一区二区老年人| www884aa| 御书宅自由小说阅读无弹窗| 中文字幕高清免费不卡视频| 日本一区二区三区免费观看| 久久精品国产99国产精品| 超清高清欧美videos| 日本一道综合久久aⅴ免费| 久久综合日韩亚洲精品色| 欧美乱大交xxxxx另类| 亚洲欧洲av无码专区| 波多野结衣电影一区二区| 免费夜色污私人影院在线观看 | 亚洲av无码成人网站在线观看| 精品久久久久久777米琪桃花| 国产尤物在线视精品在亚洲|