🙄

MQL5でポジションの最大のロットサイズを調べる方法

2023/10/07に公開

ポジション数をカウントする関数を変更してポジションの最大のロットサイズの計算をします。

ポジション数のカウント

int position_count(int side)
  {
   int count =0;
   for(int i=PositionsTotal()-1; i>=0; i--)
     {
     if("" != PositionGetSymbol(i))
        {
         if(PositionGetInteger(POSITION_TYPE)==side)
           {
            if(Symbol()==PositionGetString(POSITION_SYMBOL))
              {
               if(PositionGetInteger(POSITION_MAGIC)==MagicNumber)
                 {
                  count++;
                 }
              }
           }
        }
     }
   return count ;
  }

ポジションの最大のロットサイズの取得

  double position_max_lotsize(ENUM_ORDER_TYPE side)
  {
   double max_lotsize = 0;

   for(int i=PositionsTotal()-1; i>=0; i--)
     {
      if("" != PositionGetSymbol(i))
        {
         if(PositionGetInteger(POSITION_TYPE)==side)
           {
            if(Symbol()==PositionGetString(POSITION_SYMBOL))
              {
               if(PositionGetInteger(POSITION_MAGIC)==MagicNumber)
                 {
                  double current_lotsize = PositionGetDouble(POSITION_VOLUME);
                  if(current_lotsize > max_lotsize)
                    {
                     max_lotsize = current_lotsize;
                    }
                 }
              }
           }
        }
     }

   return max_lotsize;
  }

Discussion