文章 "开发回放系统 — 市场模拟(第 05 部分):加入预览"

 

新文章 开发回放系统 — 市场模拟(第 05 部分):加入预览已发布:

我们已设法开发了一套以逼真和可访问的方式来实现市场回放的系统。 现在,我们继续我们的项目,并添加数据,从而提升回放行为。

您可能会以这样的方式思考:我们有一个文件,其中包含某一天执行的所有交易跳价。 不过,仅使用此文件的内容,我们将无法从任何指标中获得真正有用的信息。 例如,即使我们使用 3 周期移动平均线(这正是 JOE DI NAPOLI 系统中所采用的),在至少创建了 3 根柱线之前,信号不会生成。 只有在此之后,移动平均线才会显示在图表上。 从实际应用的角度来看,直到今天,这个系统是完全无用的、且无操作性的。

我们想象一下我们想在 5 分钟时间帧内进行研究的情况。 我们需要等待 15 分钟,才能在图表上显示 3 周期移动平均线。 在任何有用的信号出现之前,它尚需花费几分钟。 也就是说,系统需要更新,本文的目的是讨论如何进行此更新。

您可以在下面的视频中看到系统的运行情况。 它演示了如何将不同的指标添加到回放系统当中。



作者:Daniel Jose

 

你好,丹尼尔,首先祝贺你,你每天都在超越自我。

你带来的内容非常丰富,每一行的创作都充满了技巧和精益求精的精神。

祝贺你。

我可以在 visual.net 中进行基本操作。

但在这里,我无法做更 "严肃 "的事情。我甚至试着读取您项目中的磁带部分,但在这里行不通。

只是在匆忙中,我们总是只尝试我们想要的部分,然后问题就来了。


我想做一个 EA,但我在一个变量上遇到了问题,我想知道你能否帮我。

在这部分代码中,您通过

IndicatorSetDouble(INDICATOR_LEVELVALUE, 0, 100);

但在这一部分,错误提示必须是一个 double

IndicatorSetDouble(INDICATOR_CALCULATIONS, 1, (double) open_price);

IndicatorSetDouble(INDICATOR_CALCULATIONS, 2, (double) high_price);

IndicatorSetDouble(INDICATOR_CALCULATIONS, 3, (double) low_price);

IndicatorSetDouble(INDICATOR_CALCULATIONS, 4, (double) close_price);

这些变量都被声明为 double,我甚至都试过了,但还是出错。

我试过用 INDICATOR_DATA 代替 INDICATOR_CALCULATIONS,但还是出错。

我要求在屏幕上显示,变量以双倍值正确加载。

33573.43 33573.44 33569.979999999996 33569.99


很抱歉打扰您,我甚至不知道是否可以在这里发布

如果您能帮助我,我将非常感激。

安德森

 
napalermo IndicatorSetDouble(INDICATOR_LEVELVALUE, 0, 100);

但这部分代码出现错误,提示必须是 double

IndicatorSetDouble(INDICATOR_CALCULATIONS, 1, (double) open_price);

IndicatorSetDouble(INDICATOR_CALCULATIONS, 2, (double) high_price);

IndicatorSetDouble(INDICATOR_CALCULATIONS, 3, (double) low_price);

IndicatorSetDouble(INDICATOR_CALCULATIONS, 4, (double) close_price);

这些变量都声明为 double,我也试过,但还是出错。

我试过用 INDICATOR_DATA 代替 INDICATOR_CALCULATIONS,但还是出错。

我要求在屏幕上显示,变量以 double 值正确加载。

33573.43 33573.44 33569.979999999996 33569.99


很抱歉打扰您,我甚至不知道是否可以在这里发布

如果您能帮助我,我将不胜感激。

安德森

有两件事:

第一:当你发布代码时,请使用 ALT + S,这样代码会更明显,我们也能明白那是代码而不是注释......大家看到的整体效果会是这样的:

IndicatorSetDouble(INDICATOR_LEVELVALUE, 0, 100);

这样就更容易理解了...👍

第二:你是想做专家顾问代码还是指标?因为我不明白你想做什么 ...

 
Daniel Jose #:

有两件事

第一:当您发布代码时,请使用 ALT + S,这样代码会更加明显,以便我们能够理解这是代码而不是注释......大家看到的整体效果会是这样的:

这样就更容易理解了...👍

第二:你是想做 Expert Advisor 代码还是指标?因为我不明白你想做什么 ...


好吧、

IndicatorSetDouble(INDICATOR_LEVELVALUE, 0, 100);

mas nessa parte da erro dizendo que tem que ser double

    IndicatorSetDouble(INDICATOR_CALCULATIONS, 1, (double) open_price);

    IndicatorSetDouble(INDICATOR_CALCULATIONS, 2, (double) high_price);

    IndicatorSetDouble(INDICATOR_CALCULATIONS, 3, (double) low_price);

    IndicatorSetDouble(INDICATOR_CALCULATIONS, 4, (double) close_price);

我试着用 INDICATOR_DATA 代替 INDICATOR_CALCULATIONS,结果还是出错。

我要求在屏幕上显示,结果变量以双倍值正确加载。

33573.43 33573.44 33569.979999999996 33569.99


好的,谢谢您的帮助,我会一直用代码来做的。

我正在创建一个 EA。

实际上,它应该是一个按价格设置的永恒图表。

 
napalermo #:


好的、

我试着用 INDICATOR_DATA 代替 INDICATOR_CALCULATIONS,结果还是出错。

我要求在屏幕上显示,结果变量以双倍值正确加载。

33573.43 33573.44 33569.979999999996 33569.99


好的,谢谢你的帮助,我会一直用代码来做的。

我正在创建一个 EA。

实际上,它应该是一个按价格设置的永恒图表。

请阅读这部分文档:https://www.mql5.com/zh/docs/runtime/running, 它将帮助您理解为什么会出错......😁👍

Documentação sobre MQL5: Programas MQL5 / Execução de Programa
Documentação sobre MQL5: Programas MQL5 / Execução de Programa
  • www.mql5.com
Execução de Programa - Programas MQL5 - Referência MQL5 - Referência sobre algorítimo/automatização de negociação na linguagem para MetaTrader 5
 

亲爱的Daniel
感谢您所做的宝贵而令人钦佩的工作,并与我们分享。

谨致问候。

Daniel Jose
Daniel Jose
  • www.mql5.com
Trader's profile