[存档!]任何菜鸟问题,为了不给论坛添乱。专业人士,不要与它擦肩而过。没有你,哪里都不能去 - 2. - 页 466 1...459460461462463464465466467468469470471472473...537 新评论 Victor Nikolaev 2011.06.24 09:45 #4651 Cmu4: 不......我按你的建议做了--同样的事情仍然存在。 另外,我还修改了代码,按条件分别划分为开场和结尾区块。这都是一样的。我不知道现在该怎么做。 这是测试者的截图,测试者的EA在预告片中。 你可以这样去做,用一个开放的位置控制 附加的文件: cmu4_macd_2_1.mq4 3 kb Cmu4 2011.06.24 09:55 #4652 Vinin: 可能是这样的东西,控制开放的位置。 也是往这个方向想的。但我对这个错误本身感兴趣。它在哪里? p.s. 谢谢你对代码的补充!当pompiled时,它抱怨在Closeall函数中存在未定义的order_type。 Victor Nikolaev 2011.06.24 10:01 #4653 Cmu4: 也是往这个方向想的。但我对这个错误本身感兴趣。它在哪里? p.s. 谢谢你对代码的补充!在编译时,它在Closeall函数中发誓说order_type未定义。 void Closeall(int OP=-1) { for (int i=OrdersTotal()-1; i>=0; i--) { if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) { if(OrderSymbol()==Symbol()) { if (OrderType()==OP || OP=-1) { if(OrderType()==OP_BUY) OrderClose(OrderTicket(),OrderLots(),Bid,3,Red); else if(OrderType()==OP_SELL) OrderClose(OrderTicket(),OrderLots(),Ask,3,Green); } } } } } Ivan Katsko 2011.06.24 10:15 #4654 Cmu4: 不......我按你的建议做了--同样的事情仍然存在。 另外,我还修改了代码,按条件分别划分为开场和结尾区块。这都是一样的。我不知道现在该怎么做。 这是一个测试者的截图,专家顾问在预告片中。 我需要知道:是否像这样连续开仓? 买入、卖出、买入、卖出等或连续的,如买入。 我认为你有买入和卖出的头寸在陆续打开。 原因是:被比较的MACD非常接近,并迅速改变位置(大的是小的)。因此,先满足一个条件,再满足另一个条件。 解决方案。 if (MA1-MA2 > 0.0001 && MA2-MA3 > 0.0001 && Napr==1) //или другая константа Роман 2011.06.24 10:20 #4655 extralifes: 没有通过如果不工作。 应该是只要条件(d_mn_1>d_pl_1 && (d_mn_0-d_pl_0)>=2是正确的,如果iRSI(NULL,0,rsi_period,PRICE_CLOSE,2)>0.7 && iRSI(NULL,0,rsi_period,PRICE_CLOSE,0<0.7) 只开一个卖单。 反之亦然。 可以通过while或bool来完成吗?我在编程方面完全处于紧缩状态。我明白这个逻辑链,但我的手在代码中执行起来很慢。 所以这不是问题......一切都应该通过如果......它以这种方式工作--只要(你的同一个while)条件(d_mn_1>d_pl_1 && (d_mn_0-d_pl_0)>=2--满足并且RSI(NULL,0,rsi_period,PRICE_CLOSE,2)>0。7 &&iRSI(NULL,0,rsi_period,PRICE_CLOSE,0<0.7),那么我们只开盈利... 你在这里不需要任何bool - 你为什么要处理标志,因为一切都很清楚,当所有这些条件得到满足时,我们要么打开买单,要么打开卖单? total=OrdersTotal(); if(total<1) { if (d_mn_1>d_pl_1 && (d_mn_0-d_pl_0)>=2 && iRSI(NULL,0,rsi_period,PRICE_CLOSE,2)>0.7 && iRSI(NULL,0,rsi_period,PRICE_CLOSE,0<0.7) OrderSend(Symbol(), OP_SELL, lots, NormalizeDouble(Bid, Digits), 3, /*Ask+10*Point*/0, /*Bid-10*Point*/0, "ADX sell", magic, 0, CLR_NONE); if (d_pl_1>d_mn_1 && (d_pl_0-d_mn_0)>=2 && iRSI(NULL,0,rsi_period,PRICE_CLOSE,2)<0.3 && iRSI(NULL,0,rsi_period,PRICE_CLOSE,0) > 0.3) OrderSend(Symbol(), OP_BUY, lots, NormalizeDouble(Ask, Digits), 3, /*Bid-10*Point*/0, /*Ask+10*Point*/0, "ADX buy", magic, 0, CLR_NONE); } 再一次仔细观察。 在代码的其他地方寻找错误。你写道:"它不能与If一起工作"--更详细地解释一下--在 "日志 "中是怎么说的? rlx 2011.06.24 10:33 #4656 ikatsko:你好!我不想(有时也会)打出StopOut。我决定将这批货限制在一个不会在最坏条件下 "抓住 "StopOut的值。经历了很长一段时间的试验和错误。也许有人有办法解决?初始数据。- 货币对 - 不一定是欧元兑美元- 价格(买入/卖出价格)- 指定的止损点(假定最坏的情况是,即使达到止损水平,也不会抓到一个止损点)。 - 指定的批次价值- 其他数值应使用MT4功能填写:大小1手,杠杆,交叉率。最好是一个代码。理论上,我明白需要什么:余额减去StopLoss水平的可能损失除以保证金。而且这个值应该大于StopOut(以百分比计算)。类似这样的事情int level=AccountStopoutLevel(); ///// ТОЛЬКО ЕСЛИ ВЫРАЖЕН В ПРОЦЕНТАХ!!! if (AccountStopoutMode==0) { double Marga = NormalizeDouble(MarketInfo("EURUSD", MODE_MARGINREQUIRED), 2); double TickValue = NormalizeDouble(MarketInfo("EURUSD", MODE_TICKVALUE), 2); int SL = 26;////Пунктов double lotsShortNaVSE = NormalizeDouble(AccountBalance() / (level * Marga / 100.0 + SL * TickValue ), 2); }手数不得高于手数ShortNaVSE SL ---- 是指你所开的头寸可能出现的损失。而经纪公司对可能的损失也有自己的看法。 这就是为什么我们需要从你或经纪公司那里获得最大的数字。例如,目前欧元兑美元货币对 的交易员中心有一个可能的损失SL=26。SL = MathMax(VashSLvPunktah, SLvPunktahUVashegoDillinga); 还有其他选择吗? rlx 2011.06.24 10:36 #4657 rlx: 而经纪公司对可能的损失也有自己的看法。 这就是为什么你应该承担你或你的经纪公司的最大损失数。例如,目前经纪公司对欧元兑美元的可能损失SL=26。 也许还有一些其他的变种? 这就是如何计算DC的这个观点。 但这对短期交易者来说更为关键。 rlx 2011.06.24 10:45 #4658 例如,如果你的止损是5点,那么自然会计算出很多未平仓的手数。 但是开设这样的职位是行不通的,因为经纪公司有自己的风险管理系统。 Maximonis 2011.06.24 10:47 #4659 rlx: 唯一的问题是如何计算DC的这个观点。但这对短线客来说更为关键。 日安!请帮助。我需要一个脚本,在手动交易 中自动设置止损和利润。你认为这是否可能,如果存在,请给我一个链接。 Artyom Trishkin 2011.06.24 10:50 #4660 Cmu4: 不......我按照你的建议做了--同样的事情仍然存在。 另外,我还修改了代码,按条件分别划分为开场和结尾区块。这都是一样的。我不知道现在该怎么做。 这是测试者的截图,测试者的EA在预告片中。 只要满足MAKDak条件,订单也将在每个tick上分批打开。 添加到条件中 对于买入头寸:如果没有市场上的买入订单,那么打开它... 对于卖出头寸:如果没有市场上的卖出订单,则打开它...。 而问题将得到解决。 1...459460461462463464465466467468469470471472473...537 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
不......我按你的建议做了--同样的事情仍然存在。
另外,我还修改了代码,按条件分别划分为开场和结尾区块。这都是一样的。我不知道现在该怎么做。
这是测试者的截图,测试者的EA在预告片中。
你可以这样去做,用一个开放的位置控制
可能是这样的东西,控制开放的位置。
也是往这个方向想的。但我对这个错误本身感兴趣。它在哪里?
p.s. 谢谢你对代码的补充!当pompiled时,它抱怨在Closeall函数中存在未定义的order_type。
也是往这个方向想的。但我对这个错误本身感兴趣。它在哪里?
p.s. 谢谢你对代码的补充!在编译时,它在Closeall函数中发誓说order_type未定义。
不......我按你的建议做了--同样的事情仍然存在。
另外,我还修改了代码,按条件分别划分为开场和结尾区块。这都是一样的。我不知道现在该怎么做。
这是一个测试者的截图,专家顾问在预告片中。
我需要知道:是否像这样连续开仓? 买入、卖出、买入、卖出等或连续的,如买入。
我认为你有买入和卖出的头寸在陆续打开。
原因是:被比较的MACD非常接近,并迅速改变位置(大的是小的)。因此,先满足一个条件,再满足另一个条件。
解决方案。
没有通过如果不工作。
应该是只要条件(d_mn_1>d_pl_1 && (d_mn_0-d_pl_0)>=2是正确的,如果iRSI(NULL,0,rsi_period,PRICE_CLOSE,2)>0.7 && iRSI(NULL,0,rsi_period,PRICE_CLOSE,0<0.7) 只开一个卖单。
反之亦然。
可以通过while或bool来完成吗?我在编程方面完全处于紧缩状态。我明白这个逻辑链,但我的手在代码中执行起来很慢。
所以这不是问题......一切都应该通过如果......它以这种方式工作--只要(你的同一个while)条件(d_mn_1>d_pl_1 && (d_mn_0-d_pl_0)>=2--满足并且RSI(NULL,0,rsi_period,PRICE_CLOSE,2)>0。7 &&iRSI(NULL,0,rsi_period,PRICE_CLOSE,0<0.7),那么我们只开盈利...
你在这里不需要任何bool - 你为什么要处理标志,因为一切都很清楚,当所有这些条件得到满足时,我们要么打开买单,要么打开卖单?
再一次仔细观察。
在代码的其他地方寻找错误。你写道:"它不能与If一起工作"--更详细地解释一下--在 "日志 "中是怎么说的?
你好!我不想(有时也会)打出StopOut。我决定将这批货限制在一个不会在最坏条件下 "抓住 "StopOut的值。经历了很长一段时间的试验和错误。也许有人有办法解决?
初始数据。
- 货币对 - 不一定是欧元兑美元
- 价格(买入/卖出价格)
- 指定的止损点(假定最坏的情况是,即使达到止损水平,也不会抓到一个止损点)。
- 指定的批次价值
- 其他数值应使用MT4功能填写:大小1手,杠杆,交叉率。
最好是一个代码。
理论上,我明白需要什么:余额减去StopLoss水平的可能损失除以保证金。而且这个值应该大于StopOut(以百分比计算)。
类似这样的事情
手数不得高于手数ShortNaVSE
SL ---- 是指你所开的头寸可能出现的损失。
而经纪公司对可能的损失也有自己的看法。
这就是为什么我们需要从你或经纪公司那里获得最大的数字。例如,目前欧元兑美元货币对 的交易员中心有一个可能的损失SL=26。
SL = MathMax(VashSLvPunktah, SLvPunktahUVashegoDillinga);
还有其他选择吗?而经纪公司对可能的损失也有自己的看法。
这就是为什么你应该承担你或你的经纪公司的最大损失数。例如,目前经纪公司对欧元兑美元的可能损失SL=26。
也许还有一些其他的变种?这就是如何计算DC的这个观点。
但这对短期交易者来说更为关键。
例如,如果你的止损是5点,那么自然会计算出很多未平仓的手数。
但是开设这样的职位是行不通的,因为经纪公司有自己的风险管理系统。
唯一的问题是如何计算DC的这个观点。
但这对短线客来说更为关键。
日安!请帮助。我需要一个脚本,在手动交易 中自动设置止损和利润。你认为这是否可能,如果存在,请给我一个链接。
不......我按照你的建议做了--同样的事情仍然存在。
另外,我还修改了代码,按条件分别划分为开场和结尾区块。这都是一样的。我不知道现在该怎么做。
这是测试者的截图,测试者的EA在预告片中。
只要满足MAKDak条件,订单也将在每个tick上分批打开。
添加到条件中
对于买入头寸:如果没有市场上的买入订单,那么打开它...
对于卖出头寸:如果没有市场上的卖出订单,则打开它...。
而问题将得到解决。