新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 383 1...376377378379380381382383384385386387388389390...1953 新评论 Artyom Trishkin 2017.11.21 18:46 #3821 konam1:大家下午好。追踪每小时蜡烛图开盘时抛物线的数值。当我通过历史运行时,零条的iSAR与图表上的点重合,除了抛物线从顶部到底部的位置变化,反之亦然。如果(newbarall!=(iTime(Symbol(),60,0)){newbarall=iTime(Symbol(),60,0)。打印(iTime(Symbol(),60,0))。Print ("SAR = ",NormalizeDouble(iSAR(Symbol(),60,0.02,0.2,0),Digits);};因此,有以下问题。为什么零条抛物线正是在这些时刻被错误地计算出来?而且,实际上,如何避免它,因为当条形图打开时,点会出现,并且在蜡烛形成过程中没有重新计算,是静态的。请帮助)。谢谢你!如果你观察零点蜡烛上的抛物线 点,它毕竟不是静止的--它改变了位置,而且不仅仅是当你上下改变位置时,而是在一般情况下--有时它在一个位置上略有移动(没有上下移动)。 voron_026 2017.11.21 18:47 #3822 你好。请你告诉我为什么横线 没有被删除? if(SellInvertedHammer == true) { //if ((Open1 < Close1 && delta_minus < 0) || (Open1 >= Close1 && delta_plus > 0)) { if(!ObjectCreate(ChartID(),"Arrow_Down_InvertedHammer"+IntegerToString(InvertedHammerCandle),OBJ_ARROW_DOWN,0,TimeCurrent(),High[1] + 70*Point)) { Print("Не удалось создать метку вниз"); } ObjectSetInteger(ChartID(),"Arrow_Down_InvertedHammer"+IntegerToString(InvertedHammerCandle),OBJPROP_COLOR,clrRed);//--- установка цвета ObjectSetInteger(ChartID(),"Arrow_Down_InvertedHammer"+IntegerToString(InvertedHammerCandle),OBJPROP_STYLE,STYLE_SOLID);//--- установка стиля линии ObjectSetInteger(ChartID(),"Arrow_Down_InvertedHammer"+IntegerToString(InvertedHammerCandle),OBJPROP_WIDTH,1);//--- установка толщины линии ObjectSetInteger(ChartID(),"Arrow_Down_InvertedHammer"+IntegerToString(InvertedHammerCandle),OBJPROP_BACK,false);//--- отображение на переднем (false) или заднем (true) плане InvertedHammerCandle ++; Print ("Перевернутый молот"); Print ("Дельта+ = " + IntegerToString (delta_plus)); Print ("Дельта- = " + IntegerToString (delta_minus)); Print ("Объем = " + IntegerToString (volume)); Print ("Кумулитивная дельта = " + IntegerToString (cum_delta)); if(!ObjectCreate(ChartID(),"UpLine_InvertedHammer"+IntegerToString(lineInvertedHammerCandle),OBJ_HLINE,0,TimeCurrent(),UpLine_InvertedHammer)) { Print("Не удалось создать верхнюю линию"); } ObjectSetInteger(ChartID(),"UpLine_InvertedHammer"+IntegerToString(lineInvertedHammerCandle),OBJPROP_COLOR,clrBlueViolet);//--- установим цвет прямоугольника ObjectSetInteger(ChartID(),"UpLine_InvertedHammer"+IntegerToString(lineInvertedHammerCandle),OBJPROP_STYLE,STYLE_SOLID);//--- установим стиль линий прямоугольника ObjectSetInteger(ChartID(),"UpLine_InvertedHammer"+IntegerToString(lineInvertedHammerCandle),OBJPROP_WIDTH,1);//--- установим толщину линий прямоугольника ObjectSetInteger(ChartID(),"UpLine_InvertedHammer"+IntegerToString(lineInvertedHammerCandle),OBJPROP_BACK,false);//--- отобразим на переднем (false) или заднем (true) плане if(!ObjectCreate(ChartID(),"DownLine_InvertedHammer"+IntegerToString(lineInvertedHammerCandle),OBJ_HLINE,0,TimeCurrent(),DownLine_InvertedHammer)) { Print("Не удалось создать нижнюю линию"); } ObjectSetInteger(ChartID(),"DownLine_InvertedHammer"+IntegerToString(lineInvertedHammerCandle),OBJPROP_COLOR,clrSlateBlue);//--- установим цвет прямоугольника ObjectSetInteger(ChartID(),"DownLine_InvertedHammer"+IntegerToString(lineInvertedHammerCandle),OBJPROP_STYLE,STYLE_SOLID);//--- установим стиль линий прямоугольника ObjectSetInteger(ChartID(),"DownLine_InvertedHammer"+IntegerToString(lineInvertedHammerCandle),OBJPROP_WIDTH,1);//--- установим толщину линий прямоугольника ObjectSetInteger(ChartID(),"DownLine_InvertedHammer"+IntegerToString(lineInvertedHammerCandle),OBJPROP_BACK,false);//--- отобразим на переднем (false) или заднем (true) плане lineInvertedHammerCandle ++; } } if(ma2 > UpLine_InvertedHammer && ma2 > DownLine_InvertedHammer && ma1 > UpLine_InvertedHammer && ma1 > DownLine_InvertedHammer) { UpLine_InvertedHammer = 0; DownLine_InvertedHammer = 0; } if (ma2 < UpLine_InvertedHammer && ma2 > DownLine_InvertedHammer && ma1 < UpLine_InvertedHammer && ma1 < DownLine_InvertedHammer) { if(!ObjectCreate(ChartID(),"Arrow_Sell_InvertedHammer"+IntegerToString(InvertedHammerCandleSell),OBJ_ARROW_SELL,0,TimeCurrent(),Low[1] + 50*Point)) { Print("Не удалось создать метку вниз"); } ObjectSetInteger(ChartID(),"Arrow_Sell_InvertedHammer"+IntegerToString(InvertedHammerCandleSell),OBJPROP_COLOR,clrRed);//--- установка цвета ObjectSetInteger(ChartID(),"Arrow_Sell_InvertedHammer"+IntegerToString(InvertedHammerCandleSell),OBJPROP_STYLE,STYLE_SOLID);//--- установка стиля линии ObjectSetInteger(ChartID(),"Arrow_Sell_InvertedHammer"+IntegerToString(InvertedHammerCandleSell),OBJPROP_WIDTH,1);//--- установка толщины линии ObjectSetInteger(ChartID(),"Arrow_Sell_InvertedHammer"+IntegerToString(InvertedHammerCandleSell),OBJPROP_BACK,false);//--- отображение на переднем (false) или заднем (true) плане InvertedHammerCandleSell ++; Print("Точка входа SELL по разворотной свече 'Перевернутый молот'"); UpLine_InvertedHammer = 0; DownLine_InvertedHammer = 0; int upline; int downline; upline = ObjectFind(ChartID(),"UpLine_InvertedHammer"+IntegerToString(lineInvertedHammerCandle)); downline = ObjectFind(ChartID(),"DownLine_InvertedHammer"+IntegerToString(lineInvertedHammerCandle)); if(upline > -1 && downline > -1) { ObjectDelete("UpLine_InvertedHammer"+IntegerToString(lineInvertedHammerCandle)); ObjectDelete("DownLine_InvertedHammer"+IntegerToString(lineInvertedHammerCandle)); Print("Линии удалены"); } Print("Не удалось удалить верхнюю и нижнюю линии"); }这是整个代码的一部分。如果有必要,我将公布整个代码谢谢你 [删除] 2017.11.21 20:02 #3823 - 我想学习如何 在MT4或MT5中编写EA,我需要一个有经验的EA作者,他可以在实践中解释所有细微的差别,并帮助我写代码。 我不需要帮助写一个现成的EA,我有一些交易经验和想法,在测试中检查一切,了解如何在条件中使用,我需要学习如何编写不同条件。 konam1 2017.11.21 20:18 #3824 Artyom Trishkin:如果你观察零点蜡烛上的抛物线点,它毕竟不是静止的--它改变了位置,而且不仅仅是当你上下改变位置时,而是在一般情况下--有时它在一个位置上有一点移动(没有向上/向下过渡)。尽管如此,除了 "过渡 "时刻,这段历史是完全吻合的。我甚至对1-2个点的误差感到满意。 在 "过渡期",它可能是20个点或更多。问题是一样的,如何避免它。谢谢 Artyom Trishkin 2017.11.21 20:43 #3825 konam1: 尽管如此,除了 "过渡 "时刻,这段历史是完全吻合的。我甚至对1-2个点的误差感到满意。 在 "过渡期",它可能是20个点或更多。问题是一样的,如何避免它。谢谢你这到底是什么建筑?if(newbarall!=(iTime(Symbol(),60,0))) { newbarall=iTime(Symbol(),60,0); Print(iTime(Symbol(),60,0)); Print("SAR = ",NormalizeDouble(iSAR(Symbol(),60,0.02,0.2,0),Digits)); };它能带来什么?为什么要以这种方式打印 时间?那你为什么要用这种方式 来打印抛物线 的值呢? konam1 2017.11.21 21:06 #3826 Artyom Trishkin:这到底是一种什么样的设计?这样的设计有什么好处?为什么要以这种方式打印 时间?为什么要以这种方式 打印抛物线的值?-当新的小时蜡烛出现时,这个结构给出了条件的满足:如果小时蜡烛的时间与变量newbarall中的值不一致,那么我们就向该变量写入一个新的时间并满足条件。打印一小时蜡烛的开启时间- 抛物线的数值被四舍五入到小数点后4位,与图表上显示的内容一致。 Artyom Trishkin 2017.11.21 21:16 #3827 konam1: -这种设计在新的一小时蜡烛出现时给出一个条件:如果一小时蜡烛的时间与newbarall变量中的数值不一致,那么就向该变量写入新的时间,并填入条件。打印一小时蜡烛的开启时间- 抛物线值被四舍五入到小数点后4位,与图表上显示的内容一致1.不,它没有2.让它像这样3.你确定你用这个函数打印的是一个实数吗?4.为什么在结尾的小括号后需要 ; ? konam1 2017.11.21 21:24 #3828 Artyom Trishkin:1.不,它没有2.让它这样3.你确定你用这个函数打印的是一个实数吗?4.为什么在结尾的小括号后需要 ; ?1.尽管如此,该算法只对蜡烛的开端起作用,这样的结构有什么错误?3.例如,打印的数字是1.1820,所以我很确定。4.给出了部分代码。 Artyom Trishkin 2017.11.21 21:32 #3829 konam1: 1.尽管如此,该算法只对蜡烛的开盘起作用,这样的设计有什么错误?3.数字1.1820是打印出来的,例如,那么肯定。4.给出了一部分代码。1.好吧,也许我错过了 - 现在是早上五点半...3.DoubleToString()4.但你有一个条件 和一个复合运算符。if(condition) { }我没有看到任何其他的解释方式。为什么在运算符后面需要";"? Taras Slobodyanik 2017.11.21 21:34 #3830 konam1:因此,有以下问题。为什么在这些确切的时刻,零条抛物线会被错误地计算出来?而且,事实上,如何避免它,因为当条形图打开时,点出现了,并且在蜡烛的形成过程中没有重新计算,是静态的。请帮助)。谢谢你!"在蜡烛形成过程中,该点出现并静止,没有重新计算 " 的说法是不正确的,如果价格突破抛物线,该点会被重新绘制。 你需要重新计算每一个点的 抛物线,因为突破可能发生在任何时候,而不仅仅是在开盘时。 1...376377378379380381382383384385386387388389390...1953 新评论 原因: 取消 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
如果你观察零点蜡烛上的抛物线 点,它毕竟不是静止的--它改变了位置,而且不仅仅是当你上下改变位置时,而是在一般情况下--有时它在一个位置上略有移动(没有上下移动)。
你好。请你告诉我为什么横线 没有被删除?
这是整个代码的一部分。如果有必要,我将公布整个代码
谢谢你
- 我想学习如何 在MT4或MT5中编写EA,我需要一个有经验的EA作者,他可以在实践中解释所有细微的差别,并帮助我写代码。 我不需要帮助写一个现成的EA,我有一些交易经验和想法,在测试中检查一切,了解如何在条件中使用,我需要学习如何编写不同条件。
如果你观察零点蜡烛上的抛物线点,它毕竟不是静止的--它改变了位置,而且不仅仅是当你上下改变位置时,而是在一般情况下--有时它在一个位置上有一点移动(没有向上/向下过渡)。
尽管如此,除了 "过渡 "时刻,这段历史是完全吻合的。我甚至对1-2个点的误差感到满意。 在 "过渡期",它可能是20个点或更多。
问题是一样的,如何避免它。谢谢
尽管如此,除了 "过渡 "时刻,这段历史是完全吻合的。我甚至对1-2个点的误差感到满意。 在 "过渡期",它可能是20个点或更多。
问题是一样的,如何避免它。谢谢你
这到底是什么建筑?
它能带来什么?
为什么要以这种方式打印 时间?
那你为什么要用这种方式 来打印抛物线 的值呢?
这到底是一种什么样的设计?
这样的设计有什么好处?
为什么要以这种方式打印 时间?
为什么要以这种方式 打印抛物线的值?
-当新的小时蜡烛出现时,这个结构给出了条件的满足:如果小时蜡烛的时间与变量newbarall中的值不一致,那么我们就向该变量写入一个新的时间并满足条件。
打印一小时蜡烛的开启时间
- 抛物线的数值被四舍五入到小数点后4位,与图表上显示的内容一致。
-这种设计在新的一小时蜡烛出现时给出一个条件:如果一小时蜡烛的时间与newbarall变量中的数值不一致,那么就向该变量写入新的时间,并填入条件。
打印一小时蜡烛的开启时间
- 抛物线值被四舍五入到小数点后4位,与图表上显示的内容一致
1.不,它没有
2.让它像这样
3.你确定你用这个函数打印的是一个实数吗?
4.为什么在结尾的小括号后需要 ; ?
1.不,它没有
2.让它这样
3.你确定你用这个函数打印的是一个实数吗?
4.为什么在结尾的小括号后需要 ; ?
1.尽管如此,该算法只对蜡烛的开端起作用,这样的结构有什么错误?
3.例如,打印的数字是1.1820,所以我很确定。
4.给出了部分代码。
1.尽管如此,该算法只对蜡烛的开盘起作用,这样的设计有什么错误?
3.数字1.1820是打印出来的,例如,那么肯定。
4.给出了一部分代码。
1.好吧,也许我错过了 - 现在是早上五点半...
3.DoubleToString()
4.但你有一个条件 和一个复合运算符。
我没有看到任何其他的解释方式。为什么在运算符后面需要";"?
"在蜡烛形成过程中,该点出现并静止,没有重新计算 " 的说法是不正确的,如果价格突破抛物线,该点会被重新绘制。
你需要重新计算每一个点的 抛物线,因为突破可能发生在任何时候,而不仅仅是在开盘时。