你好,弗拉基米尔。很抱歉在这里提问,我在重新安装 Windows 之后无法打开 MT-5,因为我在将我的净账户更改为对冲账户时没有保存密码。您能告诉我该怎么做吗?登录名是已知的。
谢谢。
Shara1:
你无能为力。虽然很残忍,但这也是为将来打预防针:密码和登录名应该保留。
你好,弗拉基米尔。很抱歉在此提问,我在重装 Windows 后无法打开 MT-5,因为我在将净账户更改为对冲账户时没有保存密码。您能告诉我该怎么做吗?登录名已知。
谢谢。
Vladimir Karputov:
没办法。虽然很残忍,但这也是为将来打预防针:密码和登录信息应该保留。
没办法。虽然很残忍,但这也是为将来打预防针:密码和登录信息应该保留。
所以我必须下载一个新的并注册?
如果我还没有Admiralmarketing的演示?
谢谢。
你好,弗拉基米尔、
- MinProfitStep(最小盈利步长,以点为单位)"。
- MinProfitPercent("最小盈利步长 "下的手数系数)。
我怀疑这个函数是为 Netting 账户类型编写的,而 EA 代码不是为 "对冲账户 "设计的。
您能否检查一下该功能是否能在 "对冲 "账户上正确运行??
谢谢
Edviao:
你好,弗拉基米尔
- MinProfitStep(最小盈利步长,以点为单位)"
- MinProfitPercent("最小盈利步长 "下的手数系数)"
我认为这些函数不能有效或正确地工作。
,我怀疑该函数是为净额结算账户类型编写的,而 EA 代码不是为 "对冲账户 "设计的。
,我怀疑该函数是为净额结算账户类型编写的,而 EA 代码不是为 "对冲账户 "设计的。
您能否检查一下该功能是否能在 "对冲 "账户上正常运行??
谢谢
从 EA 的描述来看
在 市场 中 持有的头寸不超过一个,因此建议净额结算账户和对冲账户都使用。
- 因此,它在这两个账户上都能使用。尽管它在净额结算方面可能有自己的细微差别,但我不建议将其用于净额结算。
你好,弗拉基米尔、
在此 EA 中添加以下功能是否合理?
谢谢。
TrailingFrequency = 10; (Trailing, in seconds (< "10" -> only on a new bar)" (跟踪,以秒为单位(< "10" -> 仅在新的条形图上))
Edviao:
你好,弗拉基米尔
在此 EA 中添加以下功能是否合理?
谢谢。
"TrailingFrequency = 10; (跟踪,以秒计(<"10" -> 仅在新条形图上)"
我认为这不是个好主意。
Vladimir Karputov:
我认为这不是个好主意。
感谢您分享您的观点。
亲爱的弗拉基米尔
我对"MinProfitStep"和"MinProfitPercent"函数的代码做了一些改进。
,我认为使用新代码后,EA 将能从这些函数中获得更有效的结果。如果您能与我分享您对更新的看法、建议或意见,我将非常高兴。
else if (ExtMinProfitStep > 0) { int d=0; for(int i=PositionsTotal()-1; i>=0; --i){ if(m_position.SelectByIndex(i)){ // 通过索引选择位置,以便进一步访问其属性 if(m_position.Symbol()==m_symbol.Name() && m_position.Magic()==m_magic) { if(m_position.PositionType() != POSITION_TYPE_BUY && m_position.PositionType() != POSITION_TYPE_SELL) continue; int ActSide = m_position.PositionType() == POSITION_TYPE_SELL ? -1: +1; ulong ActTicket = m_position.Ticket(); double ActLot = m_position.Volume(); double LastOpenPrice = NormalizeDouble(m_position.PriceOpen(), _Digits); if (!HistorySelectByPosition(m_position.Identifier())) continue; if (HistoryDealsTotal() > 1){ ulong ActDealTicket = HistoryDealGetTicket(HistoryDealsTotal() - 1); LastOpenPrice = NormalizeDouble(HistoryDealGetDouble(ActDealTicket, DEAL_PRICE), _Digits); } if (ActSide * (NormalizeDouble(m_position.PriceCurrent(), _Digits) - (LastOpenPrice + ActSide * ExtMinProfitStep)) >= 0){ double lot_check=LotCheck(ActLot*InpMinProfitPercent); if(lot_check>0.0) m_trade.PositionClosePartial(ActTicket,lot_check); } } } } } }
这是干什么用的?
if(ExtMinProfitStep > 0) { int d=0; for(int i=PositionsTotal()-1; i>=0; --i) { if(m_position.SelectByIndex(i)) // 通过索引选择位置,以便进一步访问其属性 { if(m_position.Symbol()==m_symbol.Name() && m_position.Magic()==m_magic) { int ActSide = (m_position.PositionType()==POSITION_TYPE_SELL)?-1:1; ulong ActTicket = m_position.Ticket(); double ActLot = m_position.Volume(); double LastOpenPrice = NormalizeDouble(m_position.PriceOpen(),m_symbol.Digits()); if(!HistorySelectByPosition(m_position.Identifier())) continue; if(HistoryDealsTotal() > 1) { ulong ActDealTicket=HistoryDealGetTicket(HistoryDealsTotal()-1); LastOpenPrice=NormalizeDouble(HistoryDealGetDouble(ActDealTicket, DEAL_PRICE),m_symbol.Digits()); } if(ActSide*(NormalizeDouble(m_position.PriceCurrent(),m_symbol.Digits())-(LastOpenPrice+ActSide*ExtMinProfitStep))>= 0) { double lot_check=LotCheck(ActLot*InpMinProfitPercent); if(lot_check>0.0) m_trade.PositionClosePartial(ActTicket,lot_check); } } } } }
为什么不用它的方法来定位
| 获取开仓价格 |
?
Документация по MQL5: Стандартная библиотека / Торговые классы / CPositionInfo / PriceOpen
- www.mql5.com
PriceOpen - CPositionInfo - Торговые классы - Стандартная библиотека - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
你好,弗拉基米尔,很抱歉这么晚才回复。
这是为了找出最后的部分收盘价。
普里亚(Puria)方法:
一款基于普里亚(Puria)方法的交易系统。
作者: Vladimir Karputov