谢谢Wolfe!

谢谢你的回答和书!它对我来说是新的,所以我将挖掘它并学习更多的东西。

埃里克

对象的时间固定

我想知道是否有人能告诉我如何对一个物体(如箭头)进行时间固定,以便当我改变图表TF时,箭头会保持在原来的时间。 类似于画一条垂直线,然后改变图表TF。 谢谢。

[删除]

如何改变或删除.00

double HiPrice2 = iHigh(NULL,NULL,1);

double LoPrice2 = iLow (NULL,NULL,1);

double Rangehilo=(HiPrice2-LoPrice2)。

if (Digits < 4) Rangehilo = Rangehilo * 100; else Rangehilo = Rangehilo * 10000;

Comment("\n", "Range:",DoubleToStr(Rangehilo,2)+" pip","\n")。

我试着在高价和低价之间创建范围PIP,但它显示如下

->> 范围。37.00点

我的问题是,如何去除.00?这样它就只显示37点?

谢谢

NormalizeDouble(var1,0);

拉克斯

PS:刚刚注意到你的代码。DoubleToStr(Rangehilo,0) - 将2改为0

[删除]
luxinterior:
NormalizeDouble(var1,0)。

奢侈品

PS: 刚刚注意到你的代码。DoubleToStr(Rangehilo,0) - 将2改为0

Ohohhh,只是一个小错误...谢谢luxinterior!

添加stdev带

你好,很抱歉我的问题很愚蠢,但请你帮我解决。

如果你有任何指标,在图表窗口中只有一条线,而你想在这条线上添加标准偏差 带,比如布林带。你如何做到这一点。

比方说,你绘制原始指标的缓冲区名为abc

所以你首先声明这些。

extern int BandsPeriod=20;

extern int BandsShift=0;

外置双数BandsDeviations=2.0。

1) 你改变

#property indicator_buffers 1 (1变成3)

2)

SetIndexBuffer(0,abc)。

SetIndexStyle(0,DRAW_LINE);

并添加

SetIndexBuffer(1,UpperBuffer)。

SetIndexStyle(1,DRAW_LINE);

SetIndexBuffer(2,LowerBuffer);

SetIndexStyle(2,DRAW_LINE);

SetIndexDrawBegin(0,BandsPeriod+BandsShift);

SetIndexDrawBegin(1,BandsPeriod+BandsShift)。

3) 你在初始化循环中加入布林带的其他代码

int start()

{

int i,k,counted_bars=IndicatorCounted()。

double deviation,sum,oldval,newres;

//----

if(Bars<=BandsPeriod) return(0);

//---- 初始零点

如果(counted_bars<1)

等等....

4) 但你如何用你的指标中的新缓冲区 "abc "来替换原始 bands.mq4 代码中名为 MovingBuffer 的缓冲区?

最好的方法是什么?

我应该尝试把我的指标代码放到 bands.mq4 代码中去,还是反过来?

我附上了一段著名的代码,叫做band.mq4,这样你就可以看到我在做什么了。

再次对我的编码无知表示歉意

也许有人知道一个 "添加stdev bands的教程"?这将是我现在需要的。谢谢

附加的文件:
bands.mq4  3 kb

为EA编码

大家好。

我想创建一些编码,如果EA在当前交易时段已经有一笔盈利的交易,就不让它交易。

我有许多EA,它们允许我选择每天的开盘时间和收盘时间进行交易。该EA也只在每个新条形的开盘时做任何事情。因此,如果我有一笔交易,但因为触及我的止损或止盈而 被关闭,EA将等到下一个交易栏开盘时再进行新的交易。

例如,我将EA设置为在一小时图表上的上午6:00和下午2:00之间交易。在早上6:00,交易被打开。在9:23,我的止盈被击中,交易被关闭。在上午10:00,一个新的交易将被打开,并将保持开放,直到新的止损或止盈被击中,或时间到了下午2:00,这时交易被关闭,一天中剩下的交易就完成了。

我希望EA不仅能识别一天中的时间,还能识别我在交易时段内是否已经有一笔胜利的交易。因此,在上面的例子中,尽管仍在当天的交易时间段内,EA不会在上午10:00开启新的交易,因为已经有了利润。另一方面,如果在上面的例子中,是我的止损被击中,EA将在上午10:00开启一个新的交易,因为还没有盈利。

我在想,我需要使用 "OrderSelect "函数和 "Mode_History "参数来查看之前关闭的交易,然后比较订单的开盘价和收盘价,以确定是否实现了利润或损失。这听起来是不是很正确?作为一个编程新手,我不确定这是否是处理问题的最佳方式,如果是的话,我需要花很长很长的时间才能让它以正确的格式正常工作。

如果有人能帮助我,或者至少给我一些关于如何解决这个问题的见解或想法,我将不胜感激。如果我的例子没有任何意义,请告诉我,我将尝试更好地解释它。

提前感谢所提供的任何帮助。

罗恩

检查订单损失...

在这个网站上,在这个链接https://www.mql5.com/en/forum/176053/page25,有一份DIN_Kukus_EA_V2.6的副本。 如果你查看EA的内容,你会发现有一个功能可以在你的订单历史中检查订单损失,就像你自己描述的那样。 你可以使用这个工作实例,从你的订单历史中提取成功交易的数量。 你也可以修改它以提取某一特定时间段的历史记录,但我希望这能帮助你看到如何完成你建议自己做的事情......

想在EA中使用指标 结果

大家好。

Gliding_Channels指标在数据窗口的注释区显示当前的通道数据。它告诉我们当前条形图上通道的垂直深度,通道的角度(包括正数和负数),高限和低限。我想看到这些数据,但是它与我的EA在评论区显示的数据相冲突,导致我的评论闪烁。

我试图为指标中的四个基准点各添加一个SetIndexBuffer,这样我就可以用iCustom在我的EA中引用它们。通过这种方式,我只能将四个数值中的一个带入我的EA注释。(我也继续有闪烁的问题)。

谁能告诉我在我的EA中访问这四个指标结果的正确方法?

在我的EA中,我将把这四个值称为 "深度、角度、极限HI和极限LO"。

附加的文件: