初学者的问题 MQL5 MT5 MetaTrader 5 - 页 419 1...412413414415416417418419420421422423424425426...1503 新评论 Renat Akhtyamov 2015.08.26 19:55 #4181 -Aleks-: 两年了--在测试器中 :)嗯,它已经在演示中运行了一年了...那里有很多bug,当我因为外部课程而不得不连接它时...而现在有这样一个错误,我不知道如何解决--我暂时将数组的大小增加一位。为什么没有像图形缓冲区那样的自动尺寸,或者有吗?像这样试试吧。初始化数组 OrderBU[1]。首先增加数组的大小( ArrayResize(OrderBU,NorderBU+1)),然后OrderBU[NorderBU]=OrderTicket();NorderBU++。 Aleksey Vyazmikin 2015.08.26 20:08 #4182 new-rena:像这样试试吧。初始化数组 OrderBU[1]。首先增加数组的大小( ArrayResize(OrderBU,NorderBU+1)),然后OrderBU[NorderBU]=OrderTicket();NorderBU++。 谢谢 - 我将在闲暇时进行实验。 Aleksey Vyazmikin 2015.08.27 04:24 #4183 请告知如何在代码中实现以下事情。有一个基础变量A,如果它小于零,那么我们再使用五个变量--数值由指标调用函数--iCustom分配。收到数值后,我们应该对它们进行排序--找到高于和低于A变量的数值,并从这两组中定义--最大、最小、平均值。我认为有必要使用一个数组,但我不太明白如何使用。 Aleksandr Prishenko 2015.08.27 04:37 #4184 能否请您就这一点向我们提供建议? 例如,我们在图表上有一个威廉斯百分比范围(%R)指标,我们从导航器中拖动平衡量(OBV)指标到其窗口。https://charts.mql5.com/8/675/xauusd-h4-metaquotes-software-corp.pngR%在0-100%的范围内工作,OBV没有一个特定的约束力。当OBV在%R窗口时,我们直观地看到它超过了-20或-80%。我们怎样才能在我们的EA中使OBV高于-20%或低于-80%?如何将自定义指标中的OBV绑定到0-100%的范围?把它归纳为(范围)?如何才能做到这一点呢?我理解你不需要将OBV归一化为%R(图片会有所不同)。也许这是初级的,我只是没有遇到过。 Leanid Aladzyeu 2015.08.27 05:01 #4185 -Aleks-:请告知如何在代码中实现以下事情。有一个基础变量A,如果它小于零,那么我们再使用五个变量--数值由指标调用函数--iCustom分配。收到数值后,我们应该对它们进行排序--找到高于和低于A变量的数值,并从这两组中定义--最大、最小、平均值。我认为我们应该使用数组,但我不太明白如何使用。如果 (p1>p2&&p1>p3) , 如果 (p2>p1&&p2>p3) , 如果 (p3>p2&&p3>p1)我是这样做的。 Leanid Aladzyeu 2015.08.27 05:29 #4186 我需要一个浮动的手数参数,第一个手数由用户设定,然后这个参数不再是可寻的,EA自己工作,在亏损的情况下,它被提高到程序中指定的最大手数(或一个外部变量),在盈利的情况下,它被减少到指定的金额。如果我在 "Init "中写入参数,EA将停止访问外部变量的批次?或者我怎么做呢?这是一个近似的表达。 E_Ghazaryan 2015.08.27 07:42 #4187 你好。你能告诉我如何在我的EA中使用新闻数据吗?我是否需要一个指标,或者EA可以自己找到重要的新闻? Aleksey Vyazmikin 2015.08.27 13:11 #4188 Leanid Aladzyeu:如果 (p1>p2&&p1>p3) , 如果 (p2>p1&&p2>p3) , 如果 (p3>p2&&p3>p1)我是这样做的。这并不方便,特别是有大量的参数...通过阵列的解决方案很有趣。特别有趣的是,在对总数值进行平均时,如何找到一个变量的最接近的数值。 Vasiliy Smirnov 2015.08.28 07:30 #4189 first_may:晚上好。试图编写一个 关于天干线和金线交叉的简单EA。以下是代码。空白的OnTick()空白的OnTick(){TradeSignal_20()。}int TradeSignal_20(){int sig=0。如果(h_ich==INVALID_HANDLE){h_ich=iIchimoku(Symbol(),Period(),IKHtenkansen,IKHkijunsen,IKHsenkouspanb) 。return(0);}否则{如果(CopyBuffer(h_ich,0,0,3,ich1_buffer)<2) 返回(0); // TENKANSEN_LINE如果(CopyBuffer(h_ich,1,0,3,ich2_buffer)<2) 返回(0); // KIJUNSEN_LINEif (!ArraySetAsSeries(ich1_buffer,true)) return(0);if (!ArraySetAsSeries(ich2_buffer,true)) return(0);}if(ich1_buffer[1]>ich2_buffer[1]) sig=1;else if(ich1_buffer[1]<ich2_buffer[1]) sig=-1;否则sig=0。if (ich1_buffer[1]>ich2_buffer[1])if (ich1_buffer[2]<ich2_buffer[2])Alert(Symbol()+": purchase")。if (ich1_buffer[1]<ich2_buffer[1])if (ich1_buffer[2]>ich2_buffer[2])Alert(Symbol()+": sale")。//---- 返回交易信号返回(sig)。}//+------------------------------------------------------------------+我怎样才能使警报只被调用一次,而不是不断调用? 不是每次都运行它,而是根据需要。 Aleksey Vyazmikin 2015.08.28 07:53 #4190 Vasiliy Smirnov: 不是每次都运行,而是根据需要。 那么应该如何呢?当一个新的酒吧 打开时 - 然后为一个新的酒吧做检查... 1...412413414415416417418419420421422423424425426...1503 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
两年了--在测试器中 :)嗯,它已经在演示中运行了一年了...那里有很多bug,当我因为外部课程而不得不连接它时...而现在有这样一个错误,我不知道如何解决--我暂时将数组的大小增加一位。为什么没有像图形缓冲区那样的自动尺寸,或者有吗?
像这样试试吧。
初始化数组 OrderBU[1]。
首先增加数组的大小( ArrayResize(OrderBU,NorderBU+1)),然后OrderBU[NorderBU]=OrderTicket();NorderBU++。
像这样试试吧。
初始化数组 OrderBU[1]。
首先增加数组的大小( ArrayResize(OrderBU,NorderBU+1)),然后OrderBU[NorderBU]=OrderTicket();NorderBU++。
能否请您就这一点向我们提供建议?
例如,我们在图表上有一个威廉斯百分比范围(%R)指标,我们从导航器中拖动平衡量(OBV)指标到其窗口。
https://charts.mql5.com/8/675/xauusd-h4-metaquotes-software-corp.png
R%在0-100%的范围内工作,OBV没有一个特定的约束力。
当OBV在%R窗口时,我们直观地看到它超过了-20或-80%。
我们怎样才能在我们的EA中使OBV高于-20%或低于-80%?
如何将自定义指标中的OBV绑定到0-100%的范围?把它归纳为(范围)?如何才能做到这一点呢?
我理解你不需要将OBV归一化为%R(图片会有所不同)。
也许这是初级的,我只是没有遇到过。
如果 (p1>p2&&p1>p3) , 如果 (p2>p1&&p2>p3) , 如果 (p3>p2&&p3>p1)
我是这样做的。
我需要一个浮动的手数参数,第一个手数由用户设定,然后这个参数不再是可寻的,EA自己工作,在亏损的情况下,它被提高到程序中指定的最大手数(或一个外部变量),在盈利的情况下,它被减少到指定的金额。
如果我在 "Init "中写入参数,EA将停止访问外部变量的批次?
或者我怎么做呢?
这是一个近似的表达。
如果 (p1>p2&&p1>p3) , 如果 (p2>p1&&p2>p3) , 如果 (p3>p2&&p3>p1)
我是这样做的。
这并不方便,特别是有大量的参数...
通过阵列的解决方案很有趣。特别有趣的是,在对总数值进行平均时,如何找到一个变量的最接近的数值。
晚上好。试图编写一个 关于天干线和金线交叉的简单EA。以下是代码。
空白的OnTick()
空白的OnTick()
{
TradeSignal_20()。
}
int TradeSignal_20()
{
int sig=0。
如果(h_ich==INVALID_HANDLE)
{
h_ich=iIchimoku(Symbol(),Period(),IKHtenkansen,IKHkijunsen,IKHsenkouspanb) 。
return(0);
}
否则
{
如果(CopyBuffer(h_ich,0,0,3,ich1_buffer)<2) 返回(0); // TENKANSEN_LINE
如果(CopyBuffer(h_ich,1,0,3,ich2_buffer)<2) 返回(0); // KIJUNSEN_LINE
if (!ArraySetAsSeries(ich1_buffer,true)) return(0);
if (!ArraySetAsSeries(ich2_buffer,true)) return(0);
}
if(ich1_buffer[1]>ich2_buffer[1]) sig=1;
else if(ich1_buffer[1]<ich2_buffer[1]) sig=-1;
否则sig=0。
if (ich1_buffer[1]>ich2_buffer[1])
if (ich1_buffer[2]<ich2_buffer[2])
Alert(Symbol()+": purchase")。
if (ich1_buffer[1]<ich2_buffer[1])
if (ich1_buffer[2]>ich2_buffer[2])
Alert(Symbol()+": sale")。
//---- 返回交易信号
返回(sig)。
}
//+------------------------------------------------------------------+
我怎样才能使警报只被调用一次,而不是不断调用?
不是每次都运行,而是根据需要。