编码帮助 - 页 427 1...420421422423424425426427428429430431432433434...786 新评论 AtApi 2015.01.29 23:34 #4261 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作为数组的最大值。 我希望是清楚的... 没关系,我已经解决了! tfi_markets 2015.01.30 07:46 #4262 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 Coding help 如何编码? Ojala EA jahaman 2015.01.30 08:45 #4263 大家好,我正在使用(手动)指标AbsoluteStrength。 谁能在蓝线与蓝虚线交叉或红线与红虚线交叉时增加报警功能(如附件截图所示)。 allabsolutestrength_v2.3_600.mq4 非常感谢您 Petr Jahoda 附加的文件: allabsolutestrength_v2.3_600.mq4 44 kb snamp237mek_obrazovky_2015-01-30_vamp16010.22.57.jpg 173 kb tfi_markets 2015.01.30 15:11 #4264 你好,专业编码人员。 我想知道我的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(); 谢谢你。 Coding help How can I insert Error #130 - Invalid Mladen Rakic 2015.01.30 17:10 #4265 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 就函数 而言,是的,它可以这样调用 tfi_markets 2015.01.31 08:46 #4266 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() 对吗? 谢谢你,祝你周末愉快。 Coding help indicator values are not hysteresis Malle Simpson 2015.01.31 18:20 #4267 你好。 最近我一直在使用船体移动平均线,并认为我也应该在一个指标窗口中尝试HMA斜率,我找到了它,但它在我的MT4平台上无法正常运行。 hull_moving_average_2.01_amp_sr_lines_separate.mq4 谢谢 附加的文件: hma_slope.jpg 328 kb hull_moving_average_2.01_amp_sr_lines_separate.mq4 10 kb pavaka 2015.01.31 18:43 #4268 NWFstudent: 你好。最近我一直在使用船体移动平均线,并认为我也应该在指标窗口中尝试HMA斜率,我找到了它,但它在我的MT4平台上无法正常运行。 hull_moving_average_2.01_amp_sr_lines_separate.mq4 谢谢 看上去你已经解决了一半的问题了 Mladen Rakic 2015.01.31 18:48 #4269 NWFstudent: 你好。最近我一直在使用船体移动平均线,并认为我也应该在指标窗口中尝试HMA斜率,我找到了它,但它在我的MT4平台上无法正常运行。 hull_moving_average_2.01_amp_sr_lines_separate.mq4 谢谢 冯小刚学生 将第二种颜色从黑色改为其他颜色(并将第三种颜色设置为与第二种颜色相同的颜色),现在你看不到它,只是因为背景和第二种颜色是相同的--黑色。 Malle Simpson 2015.01.31 21:31 #4270 mladen: NWFstudent 将第二种颜色从黑色改为其他颜色(并将第三种颜色设置为与第二种颜色相同的颜色),现在你看不到它,只是因为背景和第二种颜色是一样的--黑色。 哇,现在我觉得自己是个十足的傻瓜。 我在看输入法的时候,向上是蓝色的,向下是红色的,但你当然是对的,像往常一样。 对不起,我是个弱智 1...420421422423424425426427428429430431432433434...786 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
谢谢你,虽然这不是我想要的......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作为数组的最大值。
我希望是清楚的...没关系,我已经解决了!![](https://c.mql5.com/forextsd/smiles/teeth_smile.png)
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 = longif((cshorts < maxshorttrades && trend_down==-1) && (trendf_up0)) OpenSell(); // Indicator and filter = short
}
}
谨此致意。
TFI
大家好,我正在使用(手动)指标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();
谢谢你。
你好,专业编码人员。
我不知道我的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
就函数 而言,是的,它可以这样调用
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
谢谢
你好。
最近我一直在使用船体移动平均线,并认为我也应该在指标窗口中尝试HMA斜率,我找到了它,但它在我的MT4平台上无法正常运行。
hull_moving_average_2.01_amp_sr_lines_separate.mq4
谢谢看上去你已经解决了一半的问题了
你好。
最近我一直在使用船体移动平均线,并认为我也应该在指标窗口中尝试HMA斜率,我找到了它,但它在我的MT4平台上无法正常运行。
hull_moving_average_2.01_amp_sr_lines_separate.mq4
谢谢冯小刚学生
将第二种颜色从黑色改为其他颜色(并将第三种颜色设置为与第二种颜色相同的颜色),现在你看不到它,只是因为背景和第二种颜色是相同的--黑色。
NWFstudent 将第二种颜色从黑色改为其他颜色(并将第三种颜色设置为与第二种颜色相同的颜色),现在你看不到它,只是因为背景和第二种颜色是一样的--黑色。
哇,现在我觉得自己是个十足的傻瓜。![](https://c.mql5.com/forextsd/smiles/tongue.png)
我在看输入法的时候,向上是蓝色的,向下是红色的,但你当然是对的,像往常一样。
对不起,我是个弱智![](https://c.mql5.com/forextsd/smiles/tongue.png)