编码帮助 - 页 427

 
AtApi:
谢谢你,虽然这不是我想要的......doublezigzag不会重绘(两个zigzag对齐),因为它是基于分形的,这些点是我想建立三角形的地方。

我试着修改了一下代码,以便获得最近的两个上层信号和最近的两个下层信号,但我有点卡住了。让我告诉你我想做什么。

这一部分是在两个人字形排列时画出信号的部分。

// Do both zigzag agree on the signal?

if(SlowSignal == FastSignal && SlowSignal != EMPTY_VALUE)

{

if(SlowSignal == OP_BUY)

{

ExtMapBuffer3 = fr_support - nShift*Point;

} else {

ExtMapBuffer3 = fr_resistance + nShift*Point;

}

[/CODE]

after this i want to get the most recent upper and the previously upper and most recent lower and the previously lower like this

[CODE]

HighOldest = ExtMapBuffer3[ArrayMaximum(ExtMapBuffer3,BarsBack,i+2)];

LowOldest = ExtMapBuffer3[ArrayMinimum(ExtMapBuffer3,BarsBack,i+2)];

所以我的理论是,我应该从ExtMapBuffer3得到最近的信号,从HighOldest得到最古老的信号。

然后我将有两个点来构建趋势线。

但是不知道为什么,缓冲区里一定有一个EMPTY_VALUE,因为当我做ArrayMaximum时,它将返回EMPY_VALUE作为数组的最大值。

我希望是清楚的...

没关系,我已经解决了!

 
mladen:
TFI 你有一个不应该出现的额外参数:指标名称后面的""(在 "Efficiency_v1.1 "后面)。删除指标名称后的""部分(空字符串)。

嗨,Mladen。

非常感谢您的建议。我想知道我是否抓错了过滤器的信号,因为即使开立多/空交易的约束条件得到满足(零线被越过),EA也没有再开立交易。你能用你的专业知识审查我的代码吗?

非常感谢您(再次):-)

if(openedOrders<=0)

{

double trend_up = iCustom(Symbol(),0,"Hull moving average 2 strict nmc","", HMA_Period, HMA_Price, HMA_Speed,0,3,1);

double trend_down = iCustom(Symbol(),0,"Hull moving average 2 strict nmc","", HMA_Period, HMA_Price, HMA_Speed,0,3,2);

double trendf_up = iCustom(Symbol(),0,"Efficiency_v1.1",Price,Length,Smooth,Signal,MA_Mode,NoiseMode,0,1,1); // Signal Buffer 1

double trendf_down = iCustom(Symbol(),0,"Efficiency_v1.1",Price,Length,Smooth,Signal,MA_Mode,NoiseMode,0,1,2);

int clongs = 0;

int cshorts = 0;

for(i=OrdersTotal()-1;i>=0; i--)

{

if(OrderType()==OP_BUY) clongs++; // Check # of long trades.

if(OrderType()==OP_SELL) cshorts++; // Check # of short trades

}

if(trend_up!=trend_down)

{

if((clongs 0 && trendf_down<0)) OpenBuy(); // Indicator and filter = long

if((cshorts < maxshorttrades && trend_down==-1) && (trendf_up0)) OpenSell(); // Indicator and filter = short

}

}

谨此致意。

TFI

附加的文件:
betrade.jpg  76 kb
 

大家好,我正在使用(手动)指标AbsoluteStrength。

谁能在蓝线与蓝虚线交叉或红线与红虚线交叉时增加报警功能(如附件截图所示)。

allabsolutestrength_v2.3_600.mq4

非常感谢您

Petr Jahoda

 

你好,专业编码人员。

我想知道我的ADX趋势强度过滤器的计算是否正确。

bool ADX_filter()

{

bool result=false;

double ADXfactor= 1;

double ADXminus = iADX(Symbol(),0,14,PRICE_OPEN,MODE_MINUSDI,0);

double ADXplus = iADX(Symbol(),0,14,PRICE_OPEN,MODE_PLUSDI,0);

double ADXmain = iADX(Symbol(),0,14,PRICE_OPEN,MODE_MAIN,0);

if(ADXplus>ADXfactor*ADXminus && ADXmain>=20 && ADXmain<=40) result=true; // buy

if(ADXminus=20 && ADXmain<=40) result=false; // sell

return(result);

}

[/CODE]

It may be called like this:

[CODE]

if(clongs<maxlongtrades && trend_up==1 && (ADX_filter()==true)) OpenBuy();

谢谢你。

 
tfi_markets:
你好,专业编码人员。

我不知道我的ADX趋势强度过滤器的计算是否可能是正确的。

bool ADX_filter()

{

bool result=false;

double ADXfactor= 1;

double ADXminus = iADX(Symbol(),0,14,PRICE_OPEN,MODE_MINUSDI,0);

double ADXplus = iADX(Symbol(),0,14,PRICE_OPEN,MODE_PLUSDI,0);

double ADXmain = iADX(Symbol(),0,14,PRICE_OPEN,MODE_MAIN,0);

if(ADXplus>ADXfactor*ADXminus && ADXmain>=20 && ADXmain<=40) result=true; // buy

if(ADXminus=20 && ADXmain<=40) result=false; // sell

return(result);

}

[/CODE]

It may be called like this:

[CODE]

if(clongs<maxlongtrades && trend_up==1 && (ADX_filter()==true)) OpenBuy();

谢谢你。

tfi_markets

函数 而言,是的,它可以这样调用

 
mladen:
tfi_markets 就函数而言,是的,它可以这样调用

嗨,姆拉登。

谢谢你的评论。我想保持我的代码主要是简单和无错误的,特别是由于用MQL4/MT4调试可能是一个挑战。

假设我想交易ADX超过20的主要强势趋势,我也可以把代码写得简单一些。

bool ADX_filter()

{

bool result=false;

if(iADX(NULL,0,14,PRICE_HIGH,MODE_MAIN,0)>20) result = true; // buy

if (iADX(NULL,0,14,PRICE_HIGH,MODE_MAIN,0)<20) result = false; // sell

return (result);

}

if(clongs1 && ADX_filter()==true)) OpenBuy();

if(cshorts<maxshorttrades && trendc==-1 &&(CCIFilter<-1 && ADX_filter()==false)) OpenSell()

对吗?

谢谢你,祝你周末愉快。

 

你好。

最近我一直在使用船体移动平均线,并认为我也应该在一个指标窗口中尝试HMA斜率,我找到了它,但它在我的MT4平台上无法正常运行。

hull_moving_average_2.01_amp_sr_lines_separate.mq4

谢谢

 
NWFstudent:
你好。

最近我一直在使用船体移动平均线,并认为我也应该在指标窗口中尝试HMA斜率,我找到了它,但它在我的MT4平台上无法正常运行。

hull_moving_average_2.01_amp_sr_lines_separate.mq4

谢谢

看上去你已经解决了一半的问题了

 
NWFstudent:
你好。

最近我一直在使用船体移动平均线,并认为我也应该在指标窗口中尝试HMA斜率,我找到了它,但它在我的MT4平台上无法正常运行。

hull_moving_average_2.01_amp_sr_lines_separate.mq4

谢谢

冯小刚学生

将第二种颜色从黑色改为其他颜色(并将第三种颜色设置为与第二种颜色相同的颜色),现在你看不到它,只是因为背景和第二种颜色是相同的--黑色。

 
mladen:
NWFstudent 将第二种颜色从黑色改为其他颜色(并将第三种颜色设置为与第二种颜色相同的颜色),现在你看不到它,只是因为背景和第二种颜色是一样的--黑色。

哇,现在我觉得自己是个十足的傻瓜。

我在看输入法的时候,向上是蓝色的,向下是红色的,但你当然是对的,像往常一样。

对不起,我是个弱智