TrailingStop ปิดทั้ง buyและsell พร้อมกันถ้าผลรวม Profit+ ช่วยเขียนให้หน่อยครับ

  • 2 replies
  • 1,630 views

0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

*

winza.winss

TrailingStop  คือ เปิด buy 1 order แล้วเปิด sell 2 order กราฟลงไปทาง sell แล้วผลรวมของ เงิน+ ให้มัน TrailingStop ปิดพร้อมกันทุก order ต้องเขียนยังไงครับ ช่วยหน่อยนะครับ ขอบคุณมากครับ

Share Topic.


*

iRuler

  • *
  • แม่ทัพเม่า แห่งไรเดอร์
  • 1,272
อ่านดูแล้ว งงๆ นะครับ ดูเหมือนไม่ใช่การ TrailingStop เลย แต่ถ้าจะให้ตามความต้องการก็


โค๊ด [Select]


void OnTick()
{
   if(GetProfit()>0)
     CloseAll();
}


double GetProfit ()
{
   double TotalBuyProfit = 0;
   for(int iPos= OrdersTotal()-1; iPos >= 0; iPos--)
   {
       if(OrderSelect(iPos, SELECT_BY_POS) && OrderMagicNumber() == magicNumber && OrderSymbol() == Symbol())
         {
            TotalBuyProfit += OrderProfit()+OrderSwap()+OrderCommission();
         }
   }
   return (TotalBuyProfit);
}

void CloseAll()
{
   bool result;
   for(int i=OrdersTotal()-1;i>=0;i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==magicNumber)
           {
            if(OrderType()==OP_BUY)
              {
               result=OrderClose(OrderTicket(),OrderLots(),Bid,999,clrNONE);
              }
            else if(OrderType()==OP_SELL)
              {
               result=OrderClose(OrderTicket(),OrderLots(),Ask,999,clrNONE);
              }
           }
        }
     }
}

*

winza.winss

ขอบคุณมากครับ  จะลองเอาไปปรับแต่ดูครับ