//--- вызов функцииint count_buy_limits=0,count_sell_limits=0,count_buy_stops=0,count_sell_stops=0;
CalculateAllPendingOrders(count_buy_limits,count_sell_limits,count_buy_stops,count_sell_stops);
//--- сама функция//+------------------------------------------------------------------+//| Calculate all pending orders |//+------------------------------------------------------------------+void CalculateAllPendingOrders(int &count_buy_limits,int &count_sell_limits,int &count_buy_stops,int &count_sell_stops)
{
count_buy_limits = 0;
count_sell_limits = 0;
count_buy_stops = 0;
count_sell_stops = 0;
for(int i=OrdersTotal()-1; i>=0; i--) // returns the number of current ordersif(m_order.SelectByIndex(i)) // selects the pending order by index for further access to its propertiesif(m_order.Symbol()==m_symbol.Name() && m_order.Magic()==InpMagic)
{
if(m_order.OrderType()==ORDER_TYPE_BUY_LIMIT)
count_buy_limits++;
elseif(m_order.OrderType()==ORDER_TYPE_SELL_LIMIT)
count_sell_limits++;
elseif(m_order.OrderType()==ORDER_TYPE_BUY_STOP)
count_buy_stops++;
elseif(m_order.OrderType()==ORDER_TYPE_SELL_STOP)
count_sell_stops++;
}
}
if((TimeCurrent()-m_position.Time())>Time*3600) {CloseOrders=true; ClosePositions(POSITION_TYPE_BUY); break;} // если прошло много времени, закрываем !!!
//| Close positions по типу |//+------------------------------------------------------------------+void ClosePositions(constENUM_POSITION_TYPE pos_type)
{
for(int i=PositionsTotal()-1;i>=0;i--) // returns the number of current positionsif(m_position.SelectByIndex(i)) // selects the position by index for further access to its propertiesif(m_position.Symbol()==m_symbol.Name() && m_position.Magic()==InpMagic)
if(m_position.PositionType()==pos_type) // gets the position type
m_trade.PositionClose(m_position.Ticket()); // close a position by the specified symbol
}
for(int i=PositionsTotal()-1;i>=0;i--)
if(m_position.SelectByIndex(i)) // selects the position by index for further access to its propertiesif(m_position.Symbol()==m_symbol.Name() && m_position.Magic()==InpMagic)
{
if(m_position.PositionType()==POSITION_TYPE_BUY)
{
こんにちは!マーケットプレイスでプログラムを購入する際のアクティベーション回数はどうなっていますか?異なるコンピューター、異なるアカウントで同時に使用することはできますか?要は、2人で1つのプログラムを買って、それぞれを別々に使いたいということです
それはフリーランサーから注文することをお勧めします - プログラムの種類と、それはオープンソースのコードであなたのものになります.
特定のタイプ(この場合はORDER_TYPE_BUY_LIMIT)またはマジックナンバーの注文があるかどうかをチェックし、それがクローズされた場合、EAはその作業を継続する方法を教えてください...。とてもありがたいのですが...。
Min Max for N Bars Martingale 2の コードで4種類の注文をカウントする例です。
こんにちは。
時間経過後にポジションをクローズ したいので、このようにしましたが、うまくいきません。
こんにちは。
時間経過後にポジションを決済 したいのですが、なぜかうまくいきません。
ClosePositions」とは誰ですか?
また、そのポジションはどのように選ぶのですか?
ClosePositions」とは誰ですか?
また、そのポジションはどのように選ぶのですか?
タイム』とは何者か?命令を出す前にブレークポイントを 設定する。ブレークポイントに全く当たらないかどうかをチェックする?
(そうです。1行に複数の文を書かないことです)
タイム』とは何者か?命令を出す前にブレークポイントを 設定する。ブレークポイントに全く当たらないかどうかをチェックする?
(そうです。1行に複数の文を書かないことです)
時間 - 外部設定での時間単位。例えば、ポジションを建ててから7時間後、ストップやテイクで決済されていなければ、決済したい。
トレーディング、自動売買システム、ストラテジーテストに関するフォーラム
初心者からのFAQ MQL5 MT5 MetaTrader 5
ウラジミール・カルプトフ, 2021.01.27 17:49
*** 注文を出す前にブレークポイントを 置く。ブレークポイントに当たったかを確認することはありますか?
(そうそう、一行に複数の演算子を書かないように)
そうですね、しなかったんですね。
修正しました。ありがとうございます。