编码帮助 - 页 305

 
Boomerang:
你好

请任何人帮助编码一个具有以下标准的指标。

用户输入。

1- 时间框架:当前时间框架从1分钟到4小时。

2- RSI(周期):默认设置为14

3- RSI水平。

a- 上升水平:从50到100

b- 下降水平:从0到50

c- 中等水平:50

4- 信号模式。

a- 卖出模式:只显示卖出信号。

b- 买入模式:只显示买入信号。

5- X=用户定义的高于或低于当日高点或低点的几个点。

卖出模式的信号。

1- 卖出模式日:在图表上只显示卖出信号。

2- 等待RSI从下往上穿越,然后从上往下回调到中等水平。

3- 在第一根蜡烛收盘时画一个红色的下降箭头,从上面越过中等水平。

4- 在红色箭头信号之前,在当天的高点之上画一个绿色的点,距离X个点。

5- 提醒和电子邮件的可能性(真,假)。

6- 不考虑任何在A时间之前和B时间之后的交叉点(向上、向下和中等)。

a- 默认A:8:15的平台。

b- 默认的B:22:00的平台。

买入模式的信号。

1- 买入模式日:在图表上只显示买入信号。

2- 等待RSI从上方越过下降水平,然后从下方回调到中等水平以上。

3- 在第一根蜡烛收盘时画一个绿色的向上箭头,从下面穿过中等水平。

4- 在绿色箭头信号之前,在当天的低点之下画一个红点,点数为X点。

5- 提醒和电子邮件的可能性(真,假)。

6- 不考虑任何在A时间之前和B时间之后的穿越(向上、向下和中等)。

a- 默认A:8:15的平台。

b- 默认B:21:00的平台。

例子。

预先感谢

回旋镖

你为什么不把第一个信号也考虑进去(与你标记的信号条件相同)?

 

heiken_ashih_sw_mtf_chrt.mq4

你好,Mr.Tools前段时间为我做了这个,但现在它在新的MT4中无法编译,错误出在timeframetoString代码上,说 "char "无效等等!

请您修复一下吧?

它在视觉上仍然有效,但我有一个用于 "独立窗口 "的第二个版本,没有正常过渡,只留下了.ex4文件,但我认为警报停止工作,所以我试图重新编译它来检查。我需要主窗口和独立窗口的同一个版本。谢谢。

附加的文件:
 
zigflip:
heiken_ashih_sw_mtf_chrt.mq4

你好,前段时间Mr.Tools好心为我做了这个,但现在在新的MT4中无法编译,在timeframetoString代码中出现错误,说 "char "无效等等!请你修复。

请您修复一下吧?

它在视觉上仍然有效,但我有一个用于 "独立窗口 "的第二个版本,它没有正常过渡,只留下了.ex4文件,但我认为警报停止工作,所以我正试图重新编译它以检查。我需要主窗口和独立窗口的同一个版本。谢谢。

Zigflip这是兼容的图表版本,你是否有单独的窗口版本,所以也可以使其兼容。

附加的文件:
 

我想让它在对某一货币对发出 "买入 "信号时,不会再对该货币对发出 "买入 "信号,直到它发出 "卖出 "信号。

#我希望当它在一个货币对上发出 "买 "的信号时,它不会再在该货币对上发出 "买 "的信号,直到它发出 "卖 "的信号。

#属性 Indicator_buffers 2

#属性 Indicator_color1 Lime

#属性 Indicator_color2 Red

//--- 缓冲区

double ExtMapBuffer1[];

double ExtMapBuffer2[];

//外部变量......

extern int barsToProcess=100;

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

//|自定义指标 初始化函数|

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

int init()

{

//---- 指标

SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(0,217);

SetIndexBuffer(0,ExtMapBuffer1);

SetIndexEmptyValue(0,0.0);

SetIndexStyle(1,DRAW_ARROW)。

SetIndexArrow(1,217);

SetIndexBuffer(1,ExtMapBuffer2);

SetIndexEmptyValue(1,0.0)。

//----

返回(0)。

}

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

//|自定义指标去初始化功能|

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

int deinit()

{

//----

//----

return(0);

}

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

//|自定义指标迭代函数|

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

int start()

{

int counted_bars=IndicatorCounted(),

限度。

如果(counted_bars>0)

counted_bars--。

limit=Bars-counted_bars。

如果(limit>barsToProcess)

limit=barsToProcess。

for(int i=0;i<limit;i++)

{

double ema13=iMA(NULL,0,13,0,MODE_EMA,PRICE_CLOSE,0)。

double ema5=iMA(NULL,0,5,0,MODE_EMA,PRICE_CLOSE,0)。

double b4ema13=iMA(NULL,0,13,0,MODE_EMA,PRICE_CLOSE,1);

double b4ema5=iMA(NULL,0,5,0,MODE_EMA,PRICE_CLOSE,1);

double mom=iMomentum(NULL,0,14,PRICE_CLOSE,0);

double b4mom=iMomentum(NULL,0,14,PRICE_CLOSE,1)。

}

static datetime lastAlerted=0;

静态字符串AlertType1=""。

静态字符串AlertType2=""。

//提高警报

if((ema5>ema13)&&(ema5>b4ema5)&&(ema13>b4ema13)&&(mom>b4mom)&&(mom>98.6591)&&(lastAlerted!=Time[0])&&(AlertType1!="Buy")){

ExtMapBuffer1=High+5*Point。

}否则

ExtMapBuffer1=0.0。

Alert(Symbol()," ",Period(), "M Price UP")。

//卖出警报

if((ema5<ema13)&&(ema5<b4ema5)&&(ema13<b4ema13)&&(mom<b4mom)&&(mom<100.6872)&&(lastAlerted!=Time[0])&&(AlertType2!="Sell")){

ExtMapBuffer2=Low-5*Point。

}否则

ExtMapBuffer2=0.0。

Alert(Symbol()," ",Period(), "M价格下跌")。

返回(0)。

}

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

 
mrtools:
Zigflip这是兼容的图表版本,你是否有独立的窗口版本,所以也可以使其兼容。

谢谢!

我只是有独立窗口版本的.ex4文件,我不知道怎么会这样,但在任何地方都找不到.mq4!

我只是改变了之前的图表版本,使其成为独立的版本,只是改变了顶部的一行--指标属性--从chart_window到独立窗口--这不是可以吗?

 

嗨,伙计们。

我需要你们的帮助。我如何向你发送一份我需要你为我修改的指标的副本?我只是不知道该怎么做。谢谢你的时间。

史蒂夫。

 
Genesisman:
嗨,伙计们。

我需要你的帮助。我如何向你发送一份我需要你为我修改的指标的副本?我只是不知道该怎么做。谢谢你的时间。

史蒂夫。

如果那是一个公开的代码,只需在这里发布(按 "进入高级",在那里你会发现如何附加一个文件)

 
Mastercash:
谁能帮我看看这段代码......它总是重复相同的警报,例如,如果它在一个货币对上发出买入警报,在大约7个蜡烛之后,它将在同一货币对上发出相同的买入警报。

#属性 indicator_chart_window

#属性 indicator_buffers 2

#属性 indicator_color1 Lime

#属性 indicator_color2 Red

//--- 缓冲区

double ExtMapBuffer1[];

double ExtMapBuffer2[];

//外部变量......

extern int barsToProcess=100;

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

//|自定义指标初始化函数|

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

int init()

{

//---- 指标

SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(0,217);

SetIndexBuffer(0,ExtMapBuffer1);

SetIndexEmptyValue(0,0.0);

SetIndexStyle(1,DRAW_ARROW)。

SetIndexArrow(1,217);

SetIndexBuffer(1,ExtMapBuffer2);

SetIndexEmptyValue(1,0.0)。

//----

返回(0)。

}

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

//|自定义指标去初始化功能|

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

int deinit()

{

//----

//----

return(0);

}

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

//|自定义指标迭代函数|

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

int start()

{

int counted_bars=IndicatorCounted(),

限度。

如果(counted_bars>0)

counted_bars--。

limit=Bars-counted_bars。

如果(limit>barsToProcess)

limit=barsToProcess。

for(int i=0;i<limit;i++)

{

double ema13=iMA(NULL,0,13,0,MODE_EMA,PRICE_CLOSE,0)。

double ema5=iMA(NULL,0,5,0,MODE_EMA,PRICE_CLOSE,0)。

double b4ema13=iMA(NULL,0,13,0,MODE_EMA,PRICE_CLOSE,1);

double b4ema5=iMA(NULL,0,5,0,MODE_EMA,PRICE_CLOSE,1);

double mom=iMomentum(NULL,0,14,PRICE_CLOSE,0);

double b4mom=iMomentum(NULL,0,14,PRICE_CLOSE,1)。

}

static datetime lastAlerted=0;

静态字符串AlertType1=""。

静态字符串AlertType2=""。

//提高警报

if((ema5>ema13)&&(ema5>b4ema5)&&(ema13>b4ema13)&&(mom>b4mom)&&(mom>98.6591)&&(lastAlerted!=Time[0])&&(AlertType1!="Buy")){

ExtMapBuffer1=High+5*Point。

}否则

ExtMapBuffer1=0.0。

Alert(Symbol()," ",Period(), "M Price UP")。

//卖出警报

if((ema5<ema13)&&(ema5<b4ema5)&&(ema13<b4ema13)&&(mom<b4mom)&&(mom<100.6872)&&(lastAlerted!=Time[0])&&(AlertType2!="Sell")){

ExtMapBuffer2=Low-5*Point。

}否则

ExtMapBuffer2=0.0。

Alert(Symbol()," ",Period(), "M价格下跌")。

返回(0)。

}

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

这将是一种方法。

附加的文件:
m.mq4  4 kb
 

亲爱的Mrtools

在所附的指标中,"MACD信号线"的计算是在SMA中进行的,它是否可以在EMA中计算(像Gerald Appel MACD)?

在某些时间段,MACD不能正常显示,是否可以在其中添加乘数,以获得更好的视觉效果?

感谢任何帮助

秘密代码

附加的文件:
macdcci.mq4  4 kb
 
secretcode:
亲爱的Mrtools

在所附的指标中,"MACD信号线 "的计算是在SMA中进行的,它是否可以在EMA中计算(如Gerald Appel MACD)?

在某些时间段,MACD不能正常显示,是否可以在其中添加乘数以获得更好的视觉效果?

谢谢你的帮助

秘密代码

嗨,Secretcode,为MACD 添加了快速、慢速和信号马的模式选项,并添加了乘数。

附加的文件: