编码帮助 - 页 149

 

嗨,Mladen,

再次感谢您的帮助。我再次需要

在下面这个指标中,我想在同一个柱子上得到 "买入 "和 "卖出 "箭头。(我的意思是,当rsi、cci和cmo条件在同一个柱子(时间)出现时)。

#属性 indicator_chart_window

#属性 indicator_buffers 2

#属性 indicator_color1 Blue

#属性 indicator_color2 红色

extern int barsToProcess=100000;

//

double ExtMapBuffer1[];

双倍ExtMapBuffer2[]。

//------------------------------------------------------------------

//

//------------------------------------------------------------------

int init()

{

SetIndexBuffer(0,ExtMapBuffer1); SetIndexStyle(0,DRAW_ARROW,0,2); SetIndexArrow(0,233);

SetIndexBuffer(1,ExtMapBuffer2); SetIndexStyle(1,DRAW_ARROW,0,2); SetIndexArrow(1,234)。

返回(0)。

}

int deinit() { return(0); }

//------------------------------------------------------------------

//

//------------------------------------------------------------------

int start()

{

int counted_bars=IndicatorCounted()。

如果(counted_bars>0)counted_bars--。

int limit=Bars-counted_bars; if(limit>barsToProcess) limit=barsToProcess;

for(int i=limit;i>=0;i--)

{

double rsi=iRSI(NULL,0,5,PRICE_CLOSE,i)。

double cci=iCCI(NULL,0,15,PRICE_CLOSE,i);

double cci1=iCCI(NULL,0,18,PRICE_CLOSE,i);

double cmo=iCustom(NULL,0, "cmo",false,18,0,i);

如果(rsi>80 && cci>250 && cmo>50)

ExtMapBuffer1=Low+5*Point;

否则ExtMapBuffer1=EMPTY_VALUE。

如果(rsi<20 && cci1<-250 && cmo<-50)

ExtMapBuffer2=High-5*Point。

否则ExtMapBuffer2=EMPTY_VALUE。

}

return(0);

}

 
anonimm:
嗨,Mladen。

再次感谢您的帮助。我还需要

在下面的指标中,我想在同一个柱子上得到 "买入 "和 "卖出 "的箭头。(我的意思是,当rsi、cci和cmo条件出现在同一个柱子(时间))。

#属性 indicator_chart_window

#属性 indicator_buffers 2

#属性 indicator_color1 Blue

#属性 indicator_color2 红色

extern int barsToProcess=100000;

//

double ExtMapBuffer1[];

双倍ExtMapBuffer2[]。

//------------------------------------------------------------------

//

//------------------------------------------------------------------

int init()

{

SetIndexBuffer(0,ExtMapBuffer1); SetIndexStyle(0,DRAW_ARROW,0,2); SetIndexArrow(0,233);

SetIndexBuffer(1,ExtMapBuffer2); SetIndexStyle(1,DRAW_ARROW,0,2); SetIndexArrow(1,234)。

返回(0)。

}

int deinit() { return(0); }

//------------------------------------------------------------------

//

//------------------------------------------------------------------

int start()

{

int counted_bars=IndicatorCounted()。

如果(counted_bars>0)counted_bars--。

int limit=Bars-counted_bars; if(limit>barsToProcess) limit=barsToProcess;

for(int i=limit;i>=0;i--)

{

double rsi=iRSI(NULL,0,5,PRICE_CLOSE,i)。

double cci=iCCI(NULL,0,15,PRICE_CLOSE,i);

double cci1=iCCI(NULL,0,18,PRICE_CLOSE,i);

double cmo=iCustom(NULL,0, "cmo",false,18,0,i);

如果(rsi>80 && cci>250 && cmo>50)

ExtMapBuffer1=Low+5*Point;

否则ExtMapBuffer1=EMPTY_VALUE。

如果(rsi<20 && cci1<-250 && cmo<-50)

ExtMapBuffer2=High-5*Point。

否则ExtMapBuffer2=EMPTY_VALUE。

}

return(0);

}

嗨,Anonimm,添加了一个趋势缓冲区,应该可以,但没有靠近cmo来测试,不能100%确定。

附加的文件:
 

嗨,mladen。

谢谢你的快速回复。这个indi很好。

请你修改一下,使之不仅显示一个星期一(如果我们选择星期一),而且显示300个星期一(或者可以调整)。

或者它不仅显示一个星期二(如果我们选择星期二),而且显示300个星期二(可以调整的更好)。

谢谢你,祝你好运。

anton

mladen:
anton1 给你。你可以选择星期几并设置线条的颜色
 
anton1:
嗨,mladen。

谢谢你的快速回复。我的想法是好的。

请你修改一下,不仅显示一个星期一(如果我们选择星期一),而且显示300个星期一(或者可以调整)。

或者它不仅显示一个星期二(如果我们选择星期二),而且显示300个星期二(可以调整的更好)。

谢谢你,祝你好运。

Anton

给你

附加的文件:
 

你好,mladen。

请你修改一下这个 "year-open "indi?我需要这个indi不仅显示一个年份的开幕线,还要显示历史上的许多年。

谢谢你,祝你好运。

anton

mladen:
fareastol

这可以让你很快找到当年的开盘价。

for (int i=0; i<12; i++) if (TimeYear(iTime(NULL,PERIOD_MN1,i))!=TimeYear(iTime(NULL,PERIOD_MN1,i+1))) break;

double yearOpen = iOpen(NULL,PERIOD_MN1,i);

然后你只需计算当前收盘价(Close[0]与你调用它时使用的时间框架无关)与当年开盘价的差额就可以了。如果你需要它作为一个指标,附上一个在当前年度开盘价上显示一条水平线并写出距离的注释的指标
 
anton1:
你好mladen。

你能不能修改一下这个 "year-open "indi?我需要这个indi不仅显示一个年份的开幕线,而且显示历史上许多年前的开幕线。

谢谢你,并请你永远注意。

anton

这不是一个指标。请再次阅读该帖子

 

嗨,Mladen。

你是一个伟大而善良的人。

非常感谢你,..............

最好的问候。

安东

注:嗨,我的朋友,Mladen,我应该如何感谢你?

mladen:
给你
 

oppsss sorry...

也许你愿意为'年年有余--横线'编码,请。

谢谢你。

anton

注意:那个indi显示的是年度开盘线,但只是今年的。我需要一个能显示历史年度开盘线的指数。

mladen:
这不是一个指标。请再读一下那个帖子
 

你好,mladen。

请你修改一下这个 "year-open "indi?我需要这个indi不仅显示一个年份的开幕线,还要显示历史上的许多年。

谢谢你,祝你好运。

anton

mladen:
fareastol

这可以让你很快找到当年的开盘价。

for (int i=0; i<12; i++) if (TimeYear(iTime(NULL,PERIOD_MN1,i))!=TimeYear(iTime(NULL,PERIOD_MN1,i+1))) break;

double yearOpen = iOpen(NULL,PERIOD_MN1,i);

然后你只需计算当前收盘价(Close[0]与你调用它时使用的时间框架无关)与当年开盘价的差额就可以了。如果你需要它作为一个指标,附上一个在当前年度开盘价上显示一条水平线并写出距离的注释的指标
 
anton1:
嗨,Mladen。

你能不能修改一下这个 "year-open "indi?我需要这个indi不仅显示一个年份的开幕线,而且显示历史上许多年前的开幕线。

谢谢你,并祝愿你永远幸福。

Anton

安东。

这里附上我的指标,帮助你画出过去任何一年的开盘价水平。请注意,默认参数NumYear = 0意味着今年的开盘价,你应该增加这个数字以显示过去几年的数值。此外,为了在同一图表上同时显示多个年份,你也应该相应地改变ID的名称。

这个指标是完全基于mladen的工作,再加上一些小的改动。我只是个编码的业余爱好者。因此,如果它不工作,那是我的编码太弱,也许Mladen会给他的手在这方面。

请注意。

冯小刚

附加的文件: