1

我是 and 的新手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

其中EURUSDpart是_Symbol另一个程序生成的,1是句号,所有其他都是要绘制的数据。

是否有任何形式可以在 a 内完成Expert Advisor,或者我需要使用 aCustom Indicator吗?

如果是这种情况,我该如何以最简单的方式做到这一点?

PS:我在 a 中读取了数据struct

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

1 回答 1

0

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

首先,
可以使用MetaTrader 终端的功能将数据单元
重新洗牌为兼容的格式T,O,H,L,C,V
导入记录。可以创建自己的名称,以避免在数据库中出现名称冲突的情况。F2 History Center [Import]SymbolHistory Center

通过这种方式,可以使用平台的底层图形引擎MT4创建数据的系统级插图。TOHLCV

在此处输入图像描述


其次,
人们可以忽略底层图形引擎并
在用户控制的 GUI 覆盖上
工作,以便

实现一种算法来读取CSV文件并根据包含在所述文件中的数据通过算法
创建一组GUI 对象。基于经验的决定是否使用 an将屈服于为此目的使用 a,因为它是一次性处理。应该意识到,代码执行生态系统在-code(正在运行)和不允许在 a 上启动的代码直接处理对象之间进行特定的上下文绑定,与MQL4CSV{ ExpertAdvisor | CustomIndicator }Script
MT4MQL4MT4.GraphGBPJPY MT4.GraphFTSE.100 MT4.Graph. 是的,如果被要求,可以实现一些附加组件并开发一个复杂的分布式处理模型,以使这项工作“跨越”上述上下文绑定边界。


第三,
在某些情况下,最有趣的方法是基于文件的方法,其中
可以以与第二种选择类似的方式
预处理 CSV数据,但不在实时MT4进程中,而是“预先”
生成自己的Profile文件,保持- - -MT4的放置和内容的约定,指的是它的第一行
~/profiles/<aProfileNAME>/chart01.chr
~/profiles/<aProfileNAME>/order.wnd
~/profiles/lastprofile.ini<aProfileNAME>

这样,一旦MT4会话开始,预制文件就会自动加载并显示为希望的内容,Q.E.D.

文件.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>
于 2016-01-29T13:44:15.730 回答