编码帮助 - 页 407 1...400401402403404405406407408409410411412413414...786 新评论 airquest 2014.12.17 16:13 #4061 各位好,我需要你们对我做的一个指标提供帮助。基本上,它是一个测试器,应该只用于优化策略的设置(同时也测试其性能)。在测试模式 下(优化为假),它工作得很好,给出了默认参数的胜率和平衡。但我很难让优化功能发挥作用。最佳设置的结果总是以较低的值(PeriodMin)结束。我不知道这是否是我使用优化双函数内声明的缓冲区的方式(见第616和617行,以及用于释放缓冲区的第746和747行)。我猜不仅如此,因为如果我不使用这些缓冲区(将AllowMultipleOpenTrades改为False),它仍然给出不一致的结果。如果有人能看一下并提供帮助,我将非常感激。非常感谢。 附加的文件: sa_bb_cci_test.mq4 36 kb Maurice Ramaharomanana 2014.12.17 16:38 #4062 airquest: 不知道你想做什么。也许是这样? 不,我恐怕没有。让我用一张屏幕截图来说明。在上面的粉红色箭头处,你可以清楚地看到LOW的红柱比HIGH的蓝柱大很多。然而,在线性条形差异指标中的相应输出却高于零!!!(见下部的粉红色箭头)。(见下面的粉色箭头)。当红色的Low柱大于蓝色的High柱时,两个柱子的差值应该是负的,而不是正的。绿色箭头显示了同样问题的另一个例子。 问候 附加的文件: example.png 25 kb airquest 2014.12.17 17:53 #4063 mrcodix: 恐怕不是。让我用一张截图来说明。在上面的粉红色箭头处,你可以清楚地看到LOW的红柱比HIGH的蓝柱大很多。然而,线性条形差异指标的相应输出却在零以上!!!(见下面的粉红色箭头)。(见下面的粉色箭头)。当红色的Low柱大于蓝色的High柱时,两个柱子的差值应该是负的,而不是正的。绿色箭头显示了相同问题的另一个例子。 问候语 所以也许是这样的?你需要看到,缓冲区3和4不是与高位VS开盘和低位VS开盘有关,而是与关盘VS开盘有关。 附加的文件: linear_price_bartestdiff_2.mq4 3 kb airquest 2014.12.17 17:57 #4064 mrcodix: 恐怕不是。让我用一张屏幕截图来说明。在上面的粉红色箭头处,你可以清楚地看到低点的红柱比高点的蓝柱大很多。然而,线性条形差异指标的相应输出却在零以上!!!(见下面的粉红色箭头)。(见下面的粉色箭头)。当红色的Low柱大于蓝色的High柱时,两个柱子的差值应该是负的,而不是正的。绿色箭头显示了相同问题的另一个例子。 问候语 或者这是用高/低点VS开盘或收盘VS开盘来选择的。 附加的文件: linear_price_bartestdiff_3.mq4 3 kb Mladen Rakic 2014.12.17 18:23 #4065 airquest: 你好,伙计们,我需要你们帮助我做的一个指标。基本上,它是一个测试器,应该只用于优化策略的设置(同时也测试其性能)。在测试模式下(优化为假),它工作得很好,给出了默认参数的胜率和平衡。但我很难让优化功能发挥作用。最佳设置的结果总是以较低的值(PeriodMin)结束。我不知道这是否是我使用优化双函数内声明的缓冲区的方式(见第616和617行,以及用于释放缓冲区的第746和747行)。我猜不仅如此,因为如果我不使用这些缓冲区(将AllowMultipleOpenTrades改为False),它仍然给出不一致的结果。如果有人能看一下并提供帮助,我将非常感激。非常感谢。 征服 你在第602行的数组recTP[]和recSL[]没有调整大小(它们的大小为0,是在循环开始时声明的方式),试着在for()循环之前调整它们的大小。 Maurice Ramaharomanana 2014.12.17 18:58 #4066 airquest: 或者这是在选择使用高/低点与开盘价或收盘价与开盘价的情况下。 不,这就是我的意思。 int start() { int counted_bars=IndicatorCounted()。 int i; //int UpDays, DownDays, NeutralDays; Double BarH, BarL, BarC; //---- for(i=0; i<Bars; i++) { BarH = High - Open; BarL = Open - Low; BarC = Close - Open; //if(BarC>0) UpDays +=1; //否则,如果(BarC<0) DownDays +=1; //否则如果(BarC==0) NeutralDays +=1; ExtMapBuffer1 = BarH; ExtMapBuffer2 = BarL; ExtMapBuffer5 = BarH - BarL; } //---- return(0); } 我现在有点自己想通了,但还是要感谢你的努力。 谁能告诉我为什么这个指标。蜡烛比率" Metatrader Files 不显示最后几个烛台的输出?在显示的图片中,它似乎并没有这样做。 Coding help Problems with SELL Orders [help]Running results airquest 2014.12.17 21:12 #4067 mladen: airquest 你的数组recTP[]和recSL[]在第602行没有被调整大小(它们的大小是0,它们在循环开始时被声明的方式),试着在for()循环前调整它们的大小 谢谢Mladen,我做了,但优化的结果仍然不正确。如果我把 "优化 "设为 "真",它给出的最低值是最佳设置(波段周期=5),而设为 "假",默认波段周期为40,例如,它显示的胜率比5更好。我重新读了几百遍代码,但找不到问题所在。如果你有什么想法,否则可能就没办法了。 这是在添加了ArrayResize 后的结果。也修复了一些bug,但还是没有得到和不优化一样的结果。 附加的文件: sa_bb_cci_test_1.mq4 37 kb airquest 2014.12.17 21:41 #4068 airquest: 谢谢Mladen,我做了,但优化后的结果仍然不正确。如果我把 "优化 "设为 "真",它给出的最低值是最佳设置(波段周期=5),而设为 "假",默认波段周期为40,例如,它显示的胜率比5更好。我重新读了几百遍代码,但找不到问题所在。 如果你有什么想法,否则可能就没戏了。 这是添加了ArrayResize的情况。也修复了一些错误,但仍然没有得到与不优化相同的结果。 不知道为什么,当通过写CSV文件检查结果时,总交易量、赢利和余额都乘以10的系数:http://clip2net.com/s/38YHODl ... Mladen Rakic 2014.12.17 22:04 #4069 airquest: 不知道为什么,当通过写CSV文件检查结果时,总交易量、赢利和余额都乘以10的系数:Microsoft Excel - BB+CCI_FX-EURUSD-H1-SA-1.csv... 征服 在我看来,总的交易和赢利是可以的(否则它们必须以0结尾)。 airquest 2014.12.17 23:17 #4070 mladen: airquest 在我看来,总的交易量和赢利都是可以的(否则就会以0结尾)。 嗯,还是...这里有一些测试。 - 默认设置(无优化,WriteCSV为真):http://clip2net.com/s/38YSV53 - 优化设置为True,PeriodMin为20,PeriodMax为20 :http://clip2net.com/s/38YT2hN 第一个测试给出了一致的数值(CSV文件和屏幕结果一致)。这很正常,因为两者都来自同一个变量。但在第二种情况下,opti的结果与屏幕的结果相比,几乎被乘以10。虽然,它们最终的结果应该是一样的...... 总之,不着急,也许随着时间的推移,我会发现问题所在。谢谢你的帮助,Mladen。 1...400401402403404405406407408409410411412413414...786 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
各位好,我需要你们对我做的一个指标提供帮助。基本上,它是一个测试器,应该只用于优化策略的设置(同时也测试其性能)。在测试模式 下(优化为假),它工作得很好,给出了默认参数的胜率和平衡。但我很难让优化功能发挥作用。最佳设置的结果总是以较低的值(PeriodMin)结束。我不知道这是否是我使用优化双函数内声明的缓冲区的方式(见第616和617行,以及用于释放缓冲区的第746和747行)。我猜不仅如此,因为如果我不使用这些缓冲区(将AllowMultipleOpenTrades改为False),它仍然给出不一致的结果。如果有人能看一下并提供帮助,我将非常感激。非常感谢。
不知道你想做什么。也许是这样?
不,我恐怕没有。让我用一张屏幕截图来说明。在上面的粉红色箭头处,你可以清楚地看到LOW的红柱比HIGH的蓝柱大很多。然而,在线性条形差异指标中的相应输出却高于零!!!(见下部的粉红色箭头)。(见下面的粉色箭头)。当红色的Low柱大于蓝色的High柱时,两个柱子的差值应该是负的,而不是正的。绿色箭头显示了同样问题的另一个例子。
问候
恐怕不是。让我用一张截图来说明。在上面的粉红色箭头处,你可以清楚地看到LOW的红柱比HIGH的蓝柱大很多。然而,线性条形差异指标的相应输出却在零以上!!!(见下面的粉红色箭头)。(见下面的粉色箭头)。当红色的Low柱大于蓝色的High柱时,两个柱子的差值应该是负的,而不是正的。绿色箭头显示了相同问题的另一个例子。 问候语
所以也许是这样的?你需要看到,缓冲区3和4不是与高位VS开盘和低位VS开盘有关,而是与关盘VS开盘有关。
恐怕不是。让我用一张屏幕截图来说明。在上面的粉红色箭头处,你可以清楚地看到低点的红柱比高点的蓝柱大很多。然而,线性条形差异指标的相应输出却在零以上!!!(见下面的粉红色箭头)。(见下面的粉色箭头)。当红色的Low柱大于蓝色的High柱时,两个柱子的差值应该是负的,而不是正的。绿色箭头显示了相同问题的另一个例子。 问候语
或者这是用高/低点VS开盘或收盘VS开盘来选择的。
你好,伙计们,我需要你们帮助我做的一个指标。基本上,它是一个测试器,应该只用于优化策略的设置(同时也测试其性能)。在测试模式下(优化为假),它工作得很好,给出了默认参数的胜率和平衡。但我很难让优化功能发挥作用。最佳设置的结果总是以较低的值(PeriodMin)结束。我不知道这是否是我使用优化双函数内声明的缓冲区的方式(见第616和617行,以及用于释放缓冲区的第746和747行)。我猜不仅如此,因为如果我不使用这些缓冲区(将AllowMultipleOpenTrades改为False),它仍然给出不一致的结果。如果有人能看一下并提供帮助,我将非常感激。非常感谢。
征服
你在第602行的数组recTP[]和recSL[]没有调整大小(它们的大小为0,是在循环开始时声明的方式),试着在for()循环之前调整它们的大小。
或者这是在选择使用高/低点与开盘价或收盘价与开盘价的情况下。
不,这就是我的意思。
int start()
{
int counted_bars=IndicatorCounted()。
int i;
//int UpDays, DownDays, NeutralDays;
Double BarH, BarL, BarC;
//----
for(i=0; i<Bars; i++)
{
BarH = High - Open;
BarL = Open - Low;
BarC = Close - Open;
//if(BarC>0) UpDays +=1;
//否则,如果(BarC<0) DownDays +=1;
//否则如果(BarC==0) NeutralDays +=1;
ExtMapBuffer1 = BarH;
ExtMapBuffer2 = BarL;
ExtMapBuffer5 = BarH - BarL;
}
//----
return(0);
}
我现在有点自己想通了,但还是要感谢你的努力。
谁能告诉我为什么这个指标。蜡烛比率" Metatrader Files 不显示最后几个烛台的输出?在显示的图片中,它似乎并没有这样做。
airquest 你的数组recTP[]和recSL[]在第602行没有被调整大小(它们的大小是0,它们在循环开始时被声明的方式),试着在for()循环前调整它们的大小
谢谢Mladen,我做了,但优化的结果仍然不正确。如果我把 "优化 "设为 "真",它给出的最低值是最佳设置(波段周期=5),而设为 "假",默认波段周期为40,例如,它显示的胜率比5更好。我重新读了几百遍代码,但找不到问题所在。如果你有什么想法,否则可能就没办法了。
这是在添加了ArrayResize 后的结果。也修复了一些bug,但还是没有得到和不优化一样的结果。
谢谢Mladen,我做了,但优化后的结果仍然不正确。如果我把 "优化 "设为 "真",它给出的最低值是最佳设置(波段周期=5),而设为 "假",默认波段周期为40,例如,它显示的胜率比5更好。我重新读了几百遍代码,但找不到问题所在。 如果你有什么想法,否则可能就没戏了。 这是添加了ArrayResize的情况。也修复了一些错误,但仍然没有得到与不优化相同的结果。
不知道为什么,当通过写CSV文件检查结果时,总交易量、赢利和余额都乘以10的系数:http://clip2net.com/s/38YHODl ...
不知道为什么,当通过写CSV文件检查结果时,总交易量、赢利和余额都乘以10的系数:Microsoft Excel - BB+CCI_FX-EURUSD-H1-SA-1.csv...
征服
在我看来,总的交易和赢利是可以的(否则它们必须以0结尾)。
airquest 在我看来,总的交易量和赢利都是可以的(否则就会以0结尾)。
嗯,还是...这里有一些测试。
- 默认设置(无优化,WriteCSV为真):http://clip2net.com/s/38YSV53
- 优化设置为True,PeriodMin为20,PeriodMax为20 :http://clip2net.com/s/38YT2hN
第一个测试给出了一致的数值(CSV文件和屏幕结果一致)。这很正常,因为两者都来自同一个变量。但在第二种情况下,opti的结果与屏幕的结果相比,几乎被乘以10。虽然,它们最终的结果应该是一样的......
总之,不着急,也许随着时间的推移,我会发现问题所在。谢谢你的帮助,Mladen。