funktija dlja position paritet
Функцию частичного закрытия?
LockAllOrders - частичное перекрытие
CloseLock - закрытие лока
void LockAllOrders(double PercentClose) { double Digits_=MarketInfo(Symbol_,MODE_DIGITS); double LotBUY_GBPUSD=0.0; double LotBUY_EURUSD=0.0; double LotSELL_GBPUSD=0.0; double LotSELL_EURUSD=0.0; for (int k=OrdersTotal()-1;k>=0;k--) { //RefreshRates(); if (OrderSelect(k,SELECT_BY_POS)==true&&OrderMagicNumber()==Magik) { int cmd=OrderType(); string OrderSymbol_=OrderSymbol(); if (cmd==OP_BUY) { if(OrderSymbol_==Symbol_) { LotBUY_EURUSD=LotBUY_EURUSD+OrderLots(); } } if (cmd==OP_SELL) { if(OrderSymbol_==Symbol_) { LotSELL_EURUSD=LotSELL_EURUSD+OrderLots(); } } } } int res=(-1); if(LotBUY_EURUSD>0) { while(res<0&&!IsStopped()) { res=OrderSend(Symbol_,OP_SELL,NormalizeLots(LotBUY_EURUSD*PercentClose,MarketInfo(Symbol_,MODE_LOTSTEP)),NormalizeDouble(MarketInfo(Symbol_,MODE_BID),Digits_),3,0,0,NULL,(0-Magik)); RefreshRates(); } res=(-1); } if(LotSELL_EURUSD>0) { while(res<0&&!IsStopped()) { res=OrderSend(Symbol_,OP_BUY,NormalizeLots(LotSELL_EURUSD*PercentClose,MarketInfo(Symbol_,MODE_LOTSTEP)),NormalizeDouble(MarketInfo(Symbol_,MODE_ASK),Digits_),3,0,0,NULL,(0-Magik)); RefreshRates(); } } } void CloseLock() { while(true) { for(int i=OrdersTotal()-1;i>=0;i--) { if(OrderSelect(i,SELECT_BY_POS)==false)continue; if(OrderMagicNumber()==(0-Magik)) { break; } } int i1=0; if(i>=0) { if(OrderMagicNumber()==(0-Magik)) { int cmd=OrderType(); int res=OrderTicket(); string Symbol_=OrderSymbol(); if(cmd==OP_BUY) { for(i1=OrdersTotal()-1;i1>=0;i1--) { if(OrderSelect(i1,SELECT_BY_POS)==false)continue; { if(OrderMagicNumber()==Magik&&OrderType()==OP_SELL&&Symbol_==OrderSymbol()) { if(OrderCloseBy(res,OrderTicket()))break; } } } } if(cmd==OP_SELL) { for(i1=OrdersTotal()-1;i1>=0;i1--) { if(OrderSelect(i1,SELECT_BY_POS)==false)continue; { if(OrderMagicNumber()==Magik&&OrderType()==OP_BUY&&Symbol_==OrderSymbol()) { if(OrderCloseBy(res,OrderTicket()))break; } } } } } } else { break; } } }
sanyooooook:
Функцию частичного закрытия?
Функцию частичного закрытия?
sanyooooook,spasibo!
Wy oshiblis nushno ne sakrytie a naoborot otkrytie-open Buy ili open Sell
po logike! Eto nushno pri bolshich dvishenijach kursa-dolivatj do pariteta!
Esli kurs idet naverch to ostajutsa toljko Sell positii.Poetomu nado dolivatj
Buy positions!
privet
pansa
Привет, форум!
кто мог бы помогать funktion Haписat kotoraja orders добавило бы
(controlliert) и заботится для order paritet.
Масса Buy=Buy, масса Sell=Sell, Pos_Dif=Buy-Sell.
Если бы Buy+ Sell>=max (максимально)-Nichewo ne delat
Если бы Pos_Dif == 0 Nichewo ne delat
Если бы Pos_Dif < 0 покупал тогда Buy
Если бы Pos_Dif > 0 покупал тогда Sell
С приветами
pansa