簡體   English   中英

如何從MQL4中的CSV文件繪制圖表?

[英]How to draw a chart from a CSV-file in MQL4?

我是MQLMetaTrader 4新手,
但我想讀一個.CSV -file並提請我鑽進的圖表值Expert Advisor我的工作。

每個.CSV文件的格式為:

;EURUSD;1
DATE;TIME;HIGH;LOW;CLOSE;OPEN;VOLUME
2014.06.11;19:11:00;1.35272;1.35271;1.35271;1.35272;4
2014.06.11;19:14:00;1.35287;1.35282;1.35284;1.35283;30

其中EURUSD部分是_Symbol ,它是另一個程序生成的, 1是句點,其他所有內容都是要繪制的數據。

是否有任何形式做內部Expert Advisor ,或者我需要使用Custom Indicator

如果是這種情況,我怎么能以最簡單的方式做到這一點?

PS:我在struct讀取數據:

struct entry
{
  string date;
  string time;
  double high;
  double low;
  double close;
  double open;
  int volume;
};

MT4提供三種主要不同的方法

第一,
一個可能
數據單元改組為兼容的格式T,O,H,L,C,V
使用MetaTrader終端的F2 History Center [Import]工具導入記錄。 可以創建自己的Symbol名稱,以避免在History Center數據庫中出現名稱沖突的情況。

這樣, MT4可以使用平台的底層圖形引擎來創建TOHLCV數據的系統級插圖。

在此處輸入圖片說明


第二,
人們可能會忽略底層的圖形引擎,並且
在用戶控制的GUI覆蓋上工作
為了
實現讀取CSV文件的算法,並
基於包含在所述CSV文件中的數據,通過算法創建一組MQL4 GUI對象。 基於經驗的決定是否使用{ ExpertAdvisor | CustomIndicator } { ExpertAdvisor | CustomIndicator }由於是一次性處理,因此會屈服於為此目的使用Script
應當意識到, MT4代碼執行生態系統在MQL4代碼(正在運行)和MT4.Graph之間進行了特定的上下文綁定 ,該上下文綁定不允許在GBPJPY MT4.Graph上啟動的代碼直接處理相關的對象使用FTSE.100 MT4.Graph 是的,如果需要的話,可以實施一些附加組件並開發復雜的分布式處理模型,以使這項工作“跨越”所述上下文綁定邊界。


第三,
在某些情況下,最有趣的方法是基於文件的方法,其中
一個可能
以與第二個選項類似的方式預處理 CSV數據,但不在實時MT4流程中,而是“事前”和
生成自己的Profile文件,並保持MT4約定的放置位置和內容
~/profiles/<aProfileNAME>/ chart01.chr
~/profiles/<aProfileNAME>/ order.wnd
lastprofile.ini ~/profiles/ lastprofile.ini ,在第一行引用<aProfileNAME>

這樣,一旦MT4會話開始,預制文件就會自動加載並自動顯示磁帶,並QED

.chr文件的語法示例:

<chart>
id=130394787628125000
comment=msLIB.TERMINAL: _______________2013.04.15 08:00:00 |cpuClockTIXs = 448765484 |
symbol=EURCHF
period=60
leftpos=6188
digits=4
scale=4
graph=1
fore=0
grid=0
volume=1
scroll=0
shift=1
ohlc=1
...

<window>
height=100
fixed_height=0

<indicator>
name=main

<object>
type=10
object_name=Fibo 16762
...

<object>
type=16
object_name=msLIB.RectangleOnEVENT
period_flags=0
create_time=1348596865
color=25600
style=0
weight=1
background=0
filling=0
selectable=1
hidden=0
zorder=0
time_0=1348592400
value_0=1.213992
time_1=1348624800
value_1=1.209486
ray=0
</object>
...

<object>
type=17
object_name=msLIB.TriangleMarker
period_flags=0
create_time=1348064992
color=17919
style=2
weight=1
background=0
filling=0
selectable=1
hidden=0
zorder=0
time_0=1348052400
value_0=1.213026
time_1=1348070400
value_1=1.213026
time_2=1348070400
value_2=1.210476
</object>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM