[存档]任何菜鸟问题,为了不使论坛变得杂乱无章。专业人士,不要路过。没有你就无处可去 - 3. - 页 316

 
fore-x:

请告知如何教导程序记住最后使用的变量。我需要记住符号、时间框架、方框、反向、宽度和条数。在用户选择的设置后,它们将被保存在某处,随后,如果参数被保存在某处,它们将从那里被加载。用什么,做什么?

按F7键

这将打开EA属性。

在 "输入参数 "标签,按 "保存 "按钮。

你可以用同样的方法加载保存的参数。

 

一张图片(含算法)不合适,所以我附上了。

以下是要点。(1)EA应该打开一个订单并设置s\l,t\p,lot。(2)然后,如果交易中出现了利润,它就简单地重复交易。(3)如果出现了亏损,它就改变一些数值和新的订单,以此类推,直到出现盈利的交易。(4) 然后恢复第1点的初始值并重复一切。如果交易中存在利润,就不可能安排一个周期(第3点)并从中退出,在退出后恢复初始参数。

 
enya:

帮助解决几个函数的问题。 图片(含算法)没有插入,所以我附上了。

看起来你没有连接它们。

但实际上这个主题是为新手程序员准备的,而不是新手交易员。

这是你讨论代码中的错误的地方。

你至少有一个你的算法代码的大纲吗?

 
sergeev:
看起来你没有连接它们。

.

循环有问题,退出循环后恢复初始值。

 
能有什么样的大纲呢? 10行。 问题是 "VB的Do while是什么样子的,我如何把最后一单的利润值(结果)放到一个变量里"?
 
请告知如何摆脱MarketInfo函数 的符号名称必须是一个字符串的错误。
 
enya:
这是一个什么样的蓝图? 问题是 "VB中的Do while模拟是什么样子的,我如何将最后一个订单的利润值(结果)放入一个变量?

先阅读教程https://book.mql4.com/ru/

没有完全类似于do循环的前检查和后检查,但有一个正常的while(后检查可以用for表示)。

程序不完全是线性的,关注事件更容易,而不是循环启动程序。

这里有一个近似的方案。

1.设置SL,TP...

2.检查未结订单的数量,如果少于一个,就开一个新的订单。

框图的逻辑仍然是痛苦的,有很多问题它都没有反应。例如,如果启动了几个EA,或者如果我们在关闭一个订单之前重新启动EA,会发生什么情况,等等。

 
dofer-dert:
请告知如何摆脱MarketInfo函数的符号名称必须是一个字符串 的错误。

MarketInfo函数需要一个字符串作为工具名称。请提供一个字符串来使用它。
 

这有什么不对吗?

这里的代码中

{

如果(lot1 < MarketInfo(NULL,MODE_MINLOT)){lot1=MarketInfo(NULL,MODE_MINLOT);lot2=lot1*2;lot3=lot1*3;lot4=lot1*4;lot5=lot1*5;

}

或在这里

STOPLEVEL = MarketInfo(Symbol(),MODE_STOPLEVEL)。

 
 MarketInfo(Symbol(),MODE_MINLOT)