[英]How to draw a chart from a CSV-file in MQL4?
我是MQL
和MetaTrader 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;
};
第一,
一個可能
將數據單元改組為兼容的格式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.