EA Programing => ปัญหาที่พบในการเขียน EA => Topic started by: aimp on สิงหาคม 13, 2016, 03:38:32 pm

Title: รบกวน Admin ครับ มือใหม่มาก ๆ ครับ
Post by: aimp on สิงหาคม 13, 2016, 03:38:32 pm
ผมต้องการให้   
ถ้า order ที่ 1 กับ order ที่ 2 ถูกเปิดแล้ว

อยากเปิดorder ที่ 3 โดยเปิด buystop  ตำแหน่งเดียวกันกับ order TP /SL กับ  order ที่ 1 (ฺBuy)

ถ้า order ที่ 1 , order ที่ 2 ,order ที่ 3 ถูกเปิดแล้ว

อยากเปิดorder ที่ 4 โดยเปิด sellstop  ตำแหน่งเดียวกันกับ order TP /SL กับ  order ที่ 2 (ฺSell)

ต้องเขียนยังไงครับ

int start()   
{
 if(OrdersTotal()== 0);
   {                                 
      OrderSend(Symbol(),OP_BUY,0.01,Ask,3,Bid-15*Point,Bid+15*Point);// orderที่ 1
      OrderSend(Symbol(),OP_SELLSTOP,0.01,Ask,3,Bid-15*Point,Bid+15*Point);// order ที่ 2
   
       if(OrdersTotal()==2);
                               //ต้องการเปิด buystop  ตำแหน่งเดียวกันกับ order TP /SL กับ  order ที่ 1
       {
       if(OrdersTotal()==3);
                               //ต้องการเปิด sellstop  ตำแหน่งเดียวกันกับ order  TP /SL order ที่ 2
 

   }
   
 return; 
     }
}
Title: Re: รบกวน Admin ครับ มือใหม่มาก ๆ ครับ
Post by: admin on สิงหาคม 18, 2016, 02:54:17 pm
Order ที่ 1 กับ Order ที่ 2 นี้เปิดยังไงครับเปิดก่อนแล้วรอ หรือเปิดเสร็จแล้วเปิด Order 3-4 ต่อเลยครับ
Title: Re: รบกวน Admin ครับ มือใหม่มาก ๆ ครับ
Post by: aimp on สิงหาคม 20, 2016, 02:10:42 pm
เริ่ม
order ที่ 1 buy ราคาปัจจุบัน  และ เปิด sell stop
ถ้า sell stop ถูกเปิด (กลายเป็น sell)    \\จะมี order  2  order (Buy 1 order,sell 1 order)

  ให้ตั้ง  buy stop ณ ราคา tp sl เดียวกันกับ order ที่ 1     \\จะมี order  3  order (Buy 1 order,sell 1 order,buystop 1 order)

ถ้า buy stop ถูกเปิด  กลายเป็น buy     \\ จะมี order  3  order (Buy 2 order,sell 1 order)
  ให้ตั้ง sell stop ณ ราคา,tp,sl เดียวกันกับ order ที่ 2  (sell)

สลับกันแบบนี้ครับ
Title: Re: รบกวน Admin ครับ มือใหม่มาก ๆ ครับ
Post by: aimp on สิงหาคม 20, 2016, 05:00:08 pm
ผมเปิด buystop ไม่ได้ครับ

//order1
void Openbuy(){
      double sl=Ask-SL*Point;
      double tp=Ask+TP*Point;
         
      OrderSend(Symbol(),OP_BUY,0.01,Ask,3,sl,tp,"My order",1689,0,clrGreen);
}
//order 2
void Opensellstop(){
     
   OrderSend(Symbol(),OP_SELLSTOP,0.02,Bid-300*Point,3,Bid+1000*Point,Bid-700*Point,"My order",1689,0,clrRed);
   
}
// order 3
void Openbuystop(){
     
   OrderSend(Symbol(),OP_BUYSTOP,0.03,Ask+300*Point,3,Ask+1000*Point,Ask+700*Point,"My order",1689,0,clrGreen);
   
}

void OnTick() {
if (BuyTotalOpen()==0 ){
       ClearOrder();
       OpenBuy();     
       OpenSellstop();
       
     
      }
      if (SellTotalOpen()==1 ){
          Openbuystop();
      }

}


order 1 กับ 2 เปิดได้ครับ
แต่ order 3 ไม่ทำงาน ไม่รู้ว่าผิดตรงไหนครับ
Title: Re: รบกวน Admin ครับ มือใหม่มาก ๆ ครับ
Post by: admin on สิงหาคม 22, 2016, 01:39:19 pm
SL ของ Buystop ผิด จะตั้งค่าแบบนี้ไม่ได้ครับ ราคา SL นี้กำไรมากกว่า TP อีกนะครับ
Title: Re: รบกวน Admin ครับ มือใหม่มาก ๆ ครับ
Post by: aimp on สิงหาคม 24, 2016, 04:55:15 pm
 :'( 

ขอบคุณครับ