[存档!]任何菜鸟问题,为了不使论坛变得混乱。专业人士,不要路过。没有你,哪里都不能去 - 4. - 页 569 1...562563564565566567568569570571572573574575576...631 新评论 [Deleted] 2012.12.04 11:57 #5681 xant:里戈尼奇,准确地说(OrderProfit()+OrderCommission()+OrderSwap()那么,我如何从已关闭的订单中获取信息? 我使用OrderSelect()和MODE_HISTORY从已关闭的订单中选择,但我如何选择必要的订单? 如果我可以从那些在我的状况之后关闭的历史中提取,那么我当然会提取并总结我所需要的东西。但不幸的是,我不明白如何做到这一点。 你需要什么?例如,记住你的EA在该工具上的第一个订单的开盘日期,并选择在它之后开出的所有订单,在按条件关闭后重置变量的值,并 记住新的(当前)值。 Alekseu Fedotov 2012.12.04 11:58 #5682 xant:请告知。在我的EA中,退出计算是基于累计利润。例如,如果在某个时间点,股权=平衡,那么当当前股权超过这个非常初始的股权时,EA将关闭所有交易。它将关闭所有的交易,无论有多少个交易。 在测试器中很简单,因为有一个货币对。然而,现实中的交易是用几种货币进行的,每一种货币都必须单独考虑。例如:如果某个货币对没有开放交易,那么变量==0。我们也应该追踪这个符号的平仓交易,直到累计利润超过这个符号的未平仓订单的损失的指定值。我在教程中找不到一个可以用来分开核算不同货币的累计利润的函数。请告知。谢谢你。 https://www.mql5.com/ru/forum/131859/page3#434223 在这里,还有https://www.mql5.com/ru/forum/131859/page3#434222 Nikita Zubarov 2012.12.04 12:05 #5683 帮我写一个开仓 的条件。 我不能按照我的想法写一个附加条件来开仓。 如果我用TP或SL关闭任何头寸,它应该用相反的头寸重新打开。 例子:如果一个卖出头寸,比如说SL,被关闭了,它将和它一起重新建立一个卖出头寸,并买入 以下是专家顾问的2个条件: 买入的条件 if (BUY){ if (takeprofit!=0) TP = NormalizeDouble(Ask + takeprofit*Point,Digits); else TP=0; if (stoploss!=0) SL = NormalizeDouble(Ask - stoploss*Point,Digits); else SL=0; if(NumberOfPositions(Symbol(),OP_BUY,Magic)<MaxOrders)OPENORDER("Buy");} 卖出条件 if (SELL){ if (takeprofit!=0) TP = NormalizeDouble(Bid - takeprofit*Point,Digits); else TP=0; if (stoploss!=0) SL = NormalizeDouble(Bid + stoploss*Point,Digits); else SL=0; if(NumberOfPositions(Symbol(),OP_SELL,Magic) <MaxOrders)OPENORDER ("Sell");} 谁明白这一点,请帮助我写出附加条件 附加的文件: sellbuy_4.mq4 3 kb [存档!]任何菜鸟问题,为了不给论坛添乱。专业人士,不要与它擦肩而过。没有你,哪里都不能去 - 2. 初学者的问题 MQL4 MT4 MetaTrader Need Help with Error Nikita Zubarov 2012.12.04 12:07 #5684 你的条件不符合((只要存款足够,它就会无限期地打开订单 [删除] 2012.12.04 12:08 #5685 rigonich: 要向左移动--F12,向右移动--我不知道。Rigonich谢谢,这是个很好的建议。这正是我所需要的! visnu 2012.12.04 12:11 #5686 哦,太好了,谢谢大家 Nikita Zubarov 2012.12.04 12:15 #5687 伙计,有了这个条件,真的有那么难吗(((像一个小顾问。 Nikita Zubarov 2012.12.04 12:20 #5688 我没有对它做任何处理,它仍然不工作 ((((只有当价格向一个方向发展时,它才会打开,如果价格掉头,它就不会打开(()。 附加的文件: trudnyaga.mq4 5 kb [Deleted] 2012.12.04 12:27 #5689 Frostr: 帮我写一个开仓的条件。 我不能按照我的想法写一个附加条件来开仓。 如果我用TP或SL关闭任何头寸,我希望它用相反的值开一个新头寸。 例如:如果一个卖出头寸被SL关闭,它将重新打开一个卖出头寸与它一起买入。 以下是EA的2个条件。 购买条件 如果(购买){ 如果(takeprofit!=0) TP = NormalizeDouble(Ask + takeprofit*Point,Digits); 否则TP=0。 如果(stoploss!=0) SL = NormalizeDouble(Ask - stoploss*Point,Digits); 否则SL=0; 如果(NumberOfPositions(Symbol(),OP_BUY,Magic)<MaxOrders)} 出售条件 如果 (SELL){ 如果(takeprofit!=0) TP = NormalizeDouble(Bid - takeprofit*Point,Digits); 否则TP=0。 如果(stoploss!=0) SL = NormalizeDouble(Bid + stoploss*Point,Digits); 否则 SL=0; 如果(NumberOfPositions(Symbol(),OP_SELL,Magic)<MaxOrders)} 谁明白这一点,请帮助我写出附加条件 很抱歉,在所附文件中,你有一个编译的文件,而不是源文件。 你不能查看它。 请发送以.mq4为扩展名的文件 Nikita Zubarov 2012.12.04 12:31 #5690 我想我已经把它修好了。 附加的文件: trudnyaga_1.mq4 5 kb 1...562563564565566567568569570571572573574575576...631 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
里戈尼奇,
准确地说(OrderProfit()+OrderCommission()+OrderSwap()
那么,我如何从已关闭的订单中获取信息?
我使用OrderSelect()和MODE_HISTORY从已关闭的订单中选择,但我如何选择必要的订单?
如果我可以从那些在我的状况之后关闭的历史中提取,那么我当然会提取并总结我所需要的东西。但不幸的是,我不明白如何做到这一点。
你需要什么?例如,记住你的EA在该工具上的第一个订单的开盘日期,并选择在它之后开出的所有订单,在按条件关闭后重置变量的值,并 记住新的(当前)值。
请告知。
在我的EA中,退出计算是基于累计利润。例如,如果在某个时间点,股权=平衡,那么当当前股权超过这个非常初始的股权时,EA将关闭所有交易。它将关闭所有的交易,无论有多少个交易。
在测试器中很简单,因为有一个货币对。
然而,现实中的交易是用几种货币进行的,每一种货币都必须单独考虑。例如:如果某个货币对没有开放交易,那么变量==0。我们也应该追踪这个符号的平仓交易,直到累计利润超过这个符号的未平仓订单的损失的指定值。
我在教程中找不到一个可以用来分开核算不同货币的累计利润的函数。请告知。谢谢你。
https://www.mql5.com/ru/forum/131859/page3#434223 在这里,还有https://www.mql5.com/ru/forum/131859/page3#434222
我不能按照我的想法写一个附加条件来开仓。
如果我用TP或SL关闭任何头寸,它应该用相反的头寸重新打开。
例子:如果一个卖出头寸,比如说SL,被关闭了,它将和它一起重新建立一个卖出头寸,并买入
以下是专家顾问的2个条件:
买入的条件
if (BUY)
{
if (takeprofit!=0) TP = NormalizeDouble(Ask + takeprofit*Point,Digits); else TP=0;
if (stoploss!=0) SL = NormalizeDouble(Ask - stoploss*Point,Digits); else SL=0;
if(NumberOfPositions(Symbol(),OP_BUY,Magic)<MaxOrders)OPENORDER("Buy");
}
卖出条件
if (SELL)
{
if (takeprofit!=0) TP = NormalizeDouble(Bid - takeprofit*Point,Digits); else TP=0;
if (stoploss!=0) SL = NormalizeDouble(Bid + stoploss*Point,Digits); else SL=0;
if(NumberOfPositions(Symbol(),OP_SELL,Magic) <MaxOrders)OPENORDER ("Sell");
}
谁明白这一点,请帮助我写出附加条件
要向左移动--F12,向右移动--我不知道。
Rigonich谢谢,这是个很好的建议。这正是我所需要的!
我没有对它做任何处理,它仍然不工作 ((((
只有当价格向一个方向发展时,它才会打开,如果价格掉头,它就不会打开(()。
帮我写一个开仓的条件。
我不能按照我的想法写一个附加条件来开仓。
如果我用TP或SL关闭任何头寸,我希望它用相反的值开一个新头寸。
例如:如果一个卖出头寸被SL关闭,它将重新打开一个卖出头寸与它一起买入。
以下是EA的2个条件。
购买条件
如果(购买)
{
如果(takeprofit!=0) TP = NormalizeDouble(Ask + takeprofit*Point,Digits); 否则TP=0。
如果(stoploss!=0) SL = NormalizeDouble(Ask - stoploss*Point,Digits); 否则SL=0;
如果(NumberOfPositions(Symbol(),OP_BUY,Magic)<MaxOrders)
}
出售条件
如果 (SELL)
{
如果(takeprofit!=0) TP = NormalizeDouble(Bid - takeprofit*Point,Digits); 否则TP=0。
如果(stoploss!=0) SL = NormalizeDouble(Bid + stoploss*Point,Digits); 否则 SL=0;
如果(NumberOfPositions(Symbol(),OP_SELL,Magic)<MaxOrders)
}
谁明白这一点,请帮助我写出附加条件
很抱歉,在所附文件中,你有一个编译的文件,而不是源文件。 你不能查看它。 请发送以.mq4为扩展名的文件