任何菜鸟问题,为了不给论坛添乱。专业人士,不要路过。没有你就无处可去 - 6. - 页 1063 1...105610571058105910601061106210631064106510661067106810691070...1178 新评论 Vitalie Postolache 2016.06.18 10:28 #10621 mould: 但你如何启用这种模式?勾选测试器窗口左下方的方框。 [Deleted] 2016.06.19 09:42 #10622 你好,Guru。你能告诉我,我是否在正确的轨道上?目标:根据与MA的距离,引入可变的地段大小。在输入参数中。extern double Lot1 = 0.01; // first variant of lot extern double Lot2 = 0.03; // 第二批变体 extern int Distan = 20; // 与SlowMA的距离马云已经在专家顾问机构中被定义了。 double SlowMA = iMA(NULL,60,periodSlowMA,0,MODE_EMA,PRICE_MEDIAN,0) 。此外,我们还需要一个条件:如果当前价格(买入或卖出,取决于方向)达到了远期规模,我们就使用第一手规模,如果更多,我们就使用第二手。首先想到的是。如果(Ask-lowMA<Distan)Lot == Lot1; 如果(SlowMA-Bid<Distan)Lot == Lot1; 如果(Ask-lowMA>Distan)Lot == Lot2; 如果(SlowMA-Bid>Distan)Lot == Lot2;但这并不奏效。错误要么是在Lot连接中,要么是在一般逻辑中。提前感谢。 Any rookie question, so Experts: GoodG@bi Review 如何编码? Alexey Viktorov 2016.06.19 10:56 #10623 delf699:你好,Guru。你能告诉我,我是否在正确的轨道上?目标:根据与MA的距离,引入可变的地段大小。在输入参数中。外部双数Lot1 = 0.01; // 第一个手的大小 extern double Lot2 = 0.03; // Second lot variant. Extern int Distan = 20; // 与SlowMA的距离在专家顾问的正文中定义了马云。 double SlowMA = iMA(NULL,60,periodSlowMA,0,MODE_EMA,PRICE_MEDIAN,0) 。然后我们需要一个条件:如果当前价格(买入价或卖出价,取决于方向)达到Distant大小,我们使用第一个手数,如果它更大,我们使用第二个手数。首先想到的是。如果(Ask-SlowMA<Distan)Lot == Lot1; 如果(SlowMA-Bid<Distan)Lot == Lot1; 。 如果(Ask-lowMA>Distan)Lot == Lot2; 如果(SlowMA-Bid>Distan)Lot == Lot2。但这并不奏效。这要么是与洛特有关的错误,要么是一般逻辑上的错误。预先感谢你。 当Ask-SlowMA可以大于Distan时,Ask、Bid和SlowMA有什么关系? [Deleted] 2016.06.19 13:13 #10624 买入价和卖出价是最后已知的买入价和卖出价,即当前价格。SlowMA是我重新命名的马 (double SlowMA = iMA(NULL,60,periodSlowMA,0,MODE_EMA,PRICE_MEDIAN,0); )当前价格(买入价或卖出价)与Ma(慢速MA)的偏差可以大于或小于Distans。根据这一点,你应该设置第一手或第二手大小。我已经找到了根据存款或未平仓订单数量改变手数的变体,但我无法从这样的线性条款中得到任何回应。直觉告诉我,我们需要一个返回绝对值的函数。也就是说,如果我们把它应用于一个负数,结果将是正数。 Alexey Viktorov 2016.06.19 20:04 #10625 delf699:买入价和卖出价是最后已知的买入价和卖出价,即当前价格。SlowMA是我重新命名的马 (double SlowMA = iMA(NULL,60,periodSlowMA,0,MODE_EMA,PRICE_MEDIAN,0); )当前价格(买入价或卖出价)与Ma(慢速MA)的偏差可以大于或小于Distans。根据这一点,你应该设置第一手或第二手大小。我已经找到了根据存款或未平仓订单数量改变手数的变体,但我无法从这样的线性条款中得到任何回应。直觉告诉我,我们需要一个返回绝对值的函数。也就是说,如果我们把它应用于一个负数,结果将是正数。 买入价和卖出价之差的绝对值稍后可能需要;现在,既然你还没有得到提示,让我们一起计算吧买入价=1.12730。MA=1.12530。Distans = 20。问题。什么时候以及1.1273到1.1253是否会超过20?由于某些原因,我的计算器只显示0.002。但这离20岁还有一段距离... [Deleted] 2016.06.20 03:43 #10626 谢谢你,我明白了。或者你可以这样做。 距离=Distan*Point。如果(Ask- SlowMA<dist)Lot == Lot1; 如果(SlowMA-Bid<dist)Lot == Lot1; 如果(Ask- SlowMA>dist)Lot == Lot2; 如果(SlowMA-Bid>dist) Lot == Lot2。那么,我怎样才能正确地做到这一点呢? Alexey Viktorov 2016.06.20 05:37 #10627 delf699:谢谢你,我明白了。或者你可以这样做。 距离=Distan*Point。如果(Ask- SlowMA<dist)Lot == Lot1; 如果(SlowMA-Bid<dist)Lot == Lot1; 如果(Ask- SlowMA>dist)Lot == Lot2; 如果(SlowMA-Bid>dist) Lot == Lot2。那么,我怎样才能正确地做到这一点呢?现在我们可以使用MathAbs(),以便不通过跟踪什么被减去什么而使我们的大脑过度思考 。还有一个有趣的条件运算符 Lot = MathAbs(Ask-SlowMA) < dist ? Lot1 : Lot2;这意味着:如果Ask-SlowMA小于dist,Lot变量将被分配到Lot1的值,否则,Lot2的值将被分配。还有一个建议:忘掉"点 "这个变量。使用_Point或Point()函数 [Deleted] 2016.06.20 16:16 #10628 谢谢你,一个美丽的解决方案。 Gupalyuk 2016.06.21 09:55 #10629 我的眼睛已经坏了,我找不到哪里缺了括号,我得到的错误是'(' - 不平衡的左括号test.mq4 31 8(从调用TrendDetection()的那一行开始)。我需要帮助,我还只是在学习......#define BULL 1;#define BEAR 2;//--------------------------------------------------------------------外部int SL = 200。外部int TP = 200。外来的双倍Lots = 0.01。外置双倍 SarStep = 0.02;外来的双倍 SarMaximum = 0.2。外来的int slippage = 5;外来的int Magic = 1;外部int MaxOrder = 1;string OrderComments = "Bargain 1.0;int Cnt=0。datetime PreviousBar;int start(){Cnt=OrdersTotal()。{如果(Cnt<MaxOrder){如果(NewBar() == true){如果(TrendDetection() == BULL){OrderSend(Symbol(),OP_BUY,Lots,NormalizeDouble(Ask,Digits),slipage,NormalizeDouble(Ask,Digits)-(SL*Point),NormalizeDouble(Ask,Digits)+(TP*Point),OrderComments,Magic,0,CLR_NONE) ; }如果(TrendDetection() == BEAR){OrderSend(Symbol(),OP_SELL,Lots,NormalizeDouble(Bid,Digits),slipage,NormalizeDouble(Bid,Digits)+(SL*Point), NormalizeDouble(Bid,Digits)-(TP*Point), OrderComments,Magic,0,CLR_NONE) ;}}}否则{return(0);}}return(0);}int TrendDetection(){double Sar = iSAR(NULL,0,SarStep,SarMaximum,1);如果(Close[1] > Sar) {返回(BULL);}。如果(Close[1] < Sar) {返回(BEAR);}。return(0);}bool NewBar(){如果(PreviousBar<Time[0]){PreviousBar = Time[0];return(true)。}否则{return(false)。}return(false)。} Any rookie question, so [存档!]任何菜鸟问题,为了不给论坛添乱。专业人士,不要与它擦肩而过。没有你,哪里都不能去 - 2. 初学者的问题 MQL5 MT5 MetaTrader Nauris Zukas 2016.06.21 10:34 #10630 AlexeyVik:而现在你可以应用MathAbs(),这样你就不必跟踪从什么地方减去什么 。还有一个有趣的条件运算符 这意味着:在Ask-SlowMA小于dist的情况下,Lot变量将被分配给Lot1的值,否则,Lot2的值将被分配。还有一个建议:忘掉 "点 "这个变量。使用_Point或Point()函数点,一切似乎都在发挥作用呢? 1...105610571058105910601061106210631064106510661067106810691070...1178 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
但你如何启用这种模式?
勾选测试器窗口左下方的方框。
你好,Guru。
你能告诉我,我是否在正确的轨道上?
目标:根据与MA的距离,引入可变的地段大小。
在输入参数中。
extern double Lot1 = 0.01; // first variant of lot
extern double Lot2 = 0.03; // 第二批变体
extern int Distan = 20; // 与SlowMA的距离
马云已经在专家顾问机构中被定义了。
double SlowMA = iMA(NULL,60,periodSlowMA,0,MODE_EMA,PRICE_MEDIAN,0) 。
此外,我们还需要一个条件:如果当前价格(买入或卖出,取决于方向)达到了远期规模,我们就使用第一手规模,如果更多,我们就使用第二手。
首先想到的是。
如果(Ask-lowMA<Distan)Lot == Lot1;
如果(SlowMA-Bid<Distan)Lot == Lot1;
如果(Ask-lowMA>Distan)Lot == Lot2;
如果(SlowMA-Bid>Distan)Lot == Lot2;
但这并不奏效。错误要么是在Lot连接中,要么是在一般逻辑中。
提前感谢。
你好,Guru。
你能告诉我,我是否在正确的轨道上?
目标:根据与MA的距离,引入可变的地段大小。
在输入参数中。
外部双数Lot1 = 0.01; // 第一个手的大小
extern double Lot2 = 0.03; // Second lot variant.
Extern int Distan = 20; // 与SlowMA的距离
在专家顾问的正文中定义了马云。
double SlowMA = iMA(NULL,60,periodSlowMA,0,MODE_EMA,PRICE_MEDIAN,0) 。
然后我们需要一个条件:如果当前价格(买入价或卖出价,取决于方向)达到Distant大小,我们使用第一个手数,如果它更大,我们使用第二个手数。
首先想到的是。
如果(Ask-SlowMA<Distan)Lot == Lot1;
如果(SlowMA-Bid<Distan)Lot == Lot1; 。
如果(Ask-lowMA>Distan)Lot == Lot2;
如果(SlowMA-Bid>Distan)Lot == Lot2。
但这并不奏效。这要么是与洛特有关的错误,要么是一般逻辑上的错误。
预先感谢你。
买入价和卖出价是最后已知的买入价和卖出价,即当前价格。
SlowMA是我重新命名的马
(double SlowMA = iMA(NULL,60,periodSlowMA,0,MODE_EMA,PRICE_MEDIAN,0); )
当前价格(买入价或卖出价)与Ma(慢速MA)的偏差可以大于或小于Distans。根据这一点,你应该设置第一手或第二手大小。
我已经找到了根据存款或未平仓订单数量改变手数的变体,但我无法从这样的线性条款中得到任何回应。
直觉告诉我,我们需要一个返回绝对值的函数。也就是说,如果我们把它应用于一个负数,结果将是正数。
买入价和卖出价是最后已知的买入价和卖出价,即当前价格。
SlowMA是我重新命名的马
(double SlowMA = iMA(NULL,60,periodSlowMA,0,MODE_EMA,PRICE_MEDIAN,0); )
当前价格(买入价或卖出价)与Ma(慢速MA)的偏差可以大于或小于Distans。根据这一点,你应该设置第一手或第二手大小。
我已经找到了根据存款或未平仓订单数量改变手数的变体,但我无法从这样的线性条款中得到任何回应。
直觉告诉我,我们需要一个返回绝对值的函数。也就是说,如果我们把它应用于一个负数,结果将是正数。
买入价和卖出价之差的绝对值稍后可能需要;现在,既然你还没有得到提示,让我们一起计算吧
买入价=1.12730。
MA=1.12530。
Distans = 20。
问题。
什么时候以及1.1273到1.1253是否会超过20?
由于某些原因,我的计算器只显示0.002。但这离20岁还有一段距离...
谢谢你,我明白了。或者你可以这样做。
距离=Distan*Point。
如果(Ask- SlowMA<dist)Lot == Lot1;
如果(SlowMA-Bid<dist)Lot == Lot1;
如果(Ask- SlowMA>dist)Lot == Lot2;
如果(SlowMA-Bid>dist) Lot == Lot2。
那么,我怎样才能正确地做到这一点呢?
谢谢你,我明白了。或者你可以这样做。
距离=Distan*Point。
如果(Ask- SlowMA<dist)Lot == Lot1;
如果(SlowMA-Bid<dist)Lot == Lot1;
如果(Ask- SlowMA>dist)Lot == Lot2;
如果(SlowMA-Bid>dist) Lot == Lot2。
那么,我怎样才能正确地做到这一点呢?
现在我们可以使用MathAbs(),以便不通过跟踪什么被减去什么而使我们的大脑过度思考 。还有一个有趣的条件运算符
Lot = MathAbs(Ask-SlowMA) < dist ? Lot1 : Lot2;
这意味着:如果Ask-SlowMA小于dist,Lot变量将被分配到Lot1的值,否则,Lot2的值将被分配。
还有一个建议:忘掉"点 "这个变量。使用_Point或Point()函数
我需要帮助,我还只是在学习......
而现在你可以应用MathAbs(),这样你就不必跟踪从什么地方减去什么 。还有一个有趣的条件运算符
这意味着:在Ask-SlowMA小于dist的情况下,Lot变量将被分配给Lot1的值,否则,Lot2的值将被分配。
还有一个建议:忘掉 "点 "这个变量。使用_Point或Point()函数