任何菜鸟问题,为了不给论坛添乱。专业人士,不要路过。没有你就无处可去 - 6. - 页 835

 


 
woin2110:
这都是蠢蠢欲动的经纪人在日线图上把周一画成了周日的蜡烛,而不是周一某个XXX艺术家画的自己的蜡烛。现在我想如何使用前几天的正确数据。我必须为所有经纪人制作一个专家顾问。而具体来说就是要找到最后一个工作日的畸形的最小值和最大值。
那么,我们应该寻找周五的最后一根杠,最好是一分钟。而周一是M1的第一个条形图中的周一,对于这个条形图,DayOfWeek()=1(或根据时区差异来计算)
 
Kirill875:

很抱歉,这是我的第一个作品,有任何潦草之处。

它的一切都适合我,除了一个,我想在M5上看到小时图的指标。

int sh = iBarShift(NULL, 60, Time[i], false)。

Close[i] =>iClose(NULL,60,sh)

iMA(NULL,60,....,sh)

 
evillive:

使用iHighest(),iLowest(),可以知道一天中有多少个M5条,我想也可以计算出到前一天结束的偏移量。

我在时针上做了计算,问题解决了,非常感谢你。

   int Min=iLowest(NULL, PERIOD_H1, MODE_LOW , 24, Hour());

   int Max=iHighest(NULL, PERIOD_H1, MODE_HIGH, 24, Hour());

   price1=iLow(NULL, PERIOD_H1,Min);

   price2=iHigh(NULL,PERIOD_H1,Max);

而这里有这么一个小问题,当终端刚刚开始时,如何确定情况。

我需要在下次启动终端时运行del=ObjectsDeleteAll(0,OBJ_HLINE);;。

 
woin2110:

这里有一个小问题,如何确定终端刚开始时的情况。

我需要在下次启动终端时运行del=ObjectsDeleteAll(0,OBJ_HLINE);;。

所以你需要在终端启动后运行脚本,其中有这一行。这里 讨论了自动运行。
 
woin2110:
但是,这只能通过日线图数据来实现。

你说的每日图表数据是什么意思?调换图表?没有必要转换。

хай_вчерашнего_дня = iHigh(_Symbol, PERIOD_D1, 1);
 
Kirill875:
evillive,谢谢你的回答,你能指出这需要插入代码的哪一部分吗?
int sh =iBarShift(NULL, 60, Time[i], false); - 在主计算循环中,其余部分--在出现的任何地方进行替换。
 

所有的参与者,你们好!请帮助我设置指标。我对这门科学不是很在行。

1.指标SimpleBars - 在改变时间框架、增加或减少图表等时不保存设置(颜色、线条等)。这些设置也会在模板中丢失。当我运行MT4时,总是要纠正。((我只是把它作为一个指标,而不是在我的EA中使用。帮助调整谁可以。

 

而另一个指标是带有云层的2MA。它也不保存设置。这是一个真正的麻烦。其他指标不知为何没有问题,但这个指标却接二连三地出现故障。帮助我,请修复它。

//+------------------------------------------------------------------+

//| ytg_DveMashki_ind.mq4

//| Yuriy Tokman |

//| yuriytokman@gmail.com |

//+------------------------------------------------------------------+

#财产版权 "Yuriy Tokman"

#属性链接 "yuriytokman@gmail.com"


#property indicator_chart_window

#property indicator_buffers 2

//#property indicator_color1 //绿色

//#property indicator_color2 //红色

//#property indicator_width1 //4

//#property indicator_width2 //4

//----

外部颜色 color1 = 绿色。

外部颜色 color2 = Red;

extern int width1 = 0;

extern int width2 = 0;

外来的int style1 = 0;

外来的int style2 = 0;

外来的int ma_1 = 25;

外来的int ma_2 = 50。

外来的int method = 0;

外来的int price = 0;

//---- 缓冲区

双倍ExtMapBuffer1[]。

双倍ExtMapBuffer2[]。

//----

int ExtCountedBars=0。

//\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n

int init()

{

//---- 指标

SetIndexStyle(0,DRAW_HISTOGRAM, style1, width1, color1)。

SetIndexBuffer(0,ExtMapBuffer1)。

SetIndexStyle(1,DRAW_HISTOGRAM, style2, width2, color2)。

SetIndexBuffer(1,ExtMapBuffer2)。

IndicatorShortName("yuriytokman@gmail.com")。

SetIndexLabel(0, "yuriytokman@gmail.com")。

SetIndexLabel(1, "yuriytokman@gmail.com")。

//----

SetIndexDrawBegin(0,10)。

SetIndexDrawBegin(1,10)。

//---- 指示器缓冲区的映射

SetIndexBuffer(0,ExtMapBuffer1)。

SetIndexBuffer(1,ExtMapBuffer2)。

Comment("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n yuriytokman@gmail.com");


return(0);

}

//\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n

int start()

{

如果(Bars<=10)返回(0)。

ExtCountedBars=IndicatorCounted()。

//----,检查是否有错误

if(ExtCountedBars<0) return(-1);

//----,最后计数的条形图将被重新计算。

如果(ExtCountedBars>0)ExtCountedBars--。

int=Bars-ExtCountedBars-1。

while(pos>=0)

{

ExtMapBuffer1[pos]=iMA(Symbol(),0,ma_1,0,方法,价格,pos)。

ExtMapBuffer2[pos]=iMA(Symbol(),0,ma_2,0,方法,价格,pos)。

pos--。

}

//----

return(0);

}

//\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n

 
Roman_Bryansk:

所有的参与者,你们好!请帮助我设置指标。我对这门科学不是很在行。

1.指标SimpleBars - 在改变时间框架、增加或减少图表等时,不保存设置(颜色、线条等)。这些设置也会在模板中丢失。当我运行MT4时,总是要纠正。((我只是把它作为一个指标,而不是在我的EA中使用。帮助调整谁可以。


对于代码,在信息编辑面板的顶部有一个按钮,或者是 Ctrl+Alt+M 的组合,代码变得很好,可读性很强。关于损失,F函数SetIndexStyle()有一个颜色参数,使用它,不要犹豫。