EA Programing => ปัญหาที่พบในการเขียน EA => Topic started by: Protector on กันยายน 11, 2009, 10:27:08 pm

Title: ส่งคำสั่งด้วยมือแล้วขึ้น ReQuote ถ้าเป็น EA จะทำยังไง
Post by: Protector on กันยายน 11, 2009, 10:27:08 pm
ถ้าส่งคำสั่งด้วยมือแล้วขึ้น ReQuote
เราก็ยังสามารถกดส่งซ้ำไปเรื่อยๆได้

แต่ถ้าเป็น EA จะทำยังไงให้มันผ่านสถานะการณ์ ReQuote นี้ได้ (น่าจะมีแต่เรามองไม่เห็น)
เช่นให้มันยืนยัน Order นั้นซ้ำไปเรื่อยๆสักสามที ถ้าราคายังไม่เปลี่ยน

แล้ว Slippage มันหมายความว่า ให้หยวนๆจับ order นั้นได้
ถ้าราคาขยับไม่เกินจากค่าที่ตั้งไว้อย่างนั้นหรือเปล่าครับ
Title: Re: ส่งคำสั่งด้วยมือแล้วขึ้น ReQuote ถ้าเป็น EA จะทำยังไง
Post by: admin on กันยายน 11, 2009, 10:30:39 pm
วิธีที่ผมใช้ คือเขียน code สั่งขายซ้ำไปเรื่อยๆๆครับ จนกว่าจะปิด order หมด ครับ เรื่อง slippage เข้าใจถูกแล้วครับถ้าราเคลื่อนไปไม่เกินจำนวนจุดที่ตั้งไวมันก็จะเข้าชื้อหรือขายให้เราครับแล้วแต่ กรณี ครับ
Title: Re: ส่งคำสั่งด้วยมือแล้วขึ้น ReQuote ถ้าเป็น EA จะทำยังไง
Post by: Protector on กันยายน 11, 2009, 10:39:54 pm
ขอรูปแบบของโค้ดส่งซ้ำได้ไหมครับ (ไม่ใช่หมายความว่าเปิดใหม่แล้วส่งเพิ่มใช่ไหมครับ)
Title: Re: ส่งคำสั่งด้วยมือแล้วขึ้น ReQuote ถ้าเป็น EA จะทำยังไง
Post by: admin on กันยายน 11, 2009, 11:49:21 pm
เอาไปดัดแปลงเองนะครับ

total=OrdersTotal();
if( ใส่เงื่อนไขที่ต้องการลงไป)
{
while(total>0)
{
         for(int i=0;i<total;i++)
        {   OrderSelect(i,SELECT_BY_POST,MODE_TRADE);
             if(OrderType()==OP_BUY())
            {
                   OrderClose(...............);
             }
               
                 if(OrderType()==OP_SELL())
            {
                   OrderClose(...............);
             }
     
        }
          total=OrdersTotal();

}   

} ที่ผมใช้ลักษณะนี้ครับ ถ้าเงื่อนไขเข้าขายเป้นจริงมันจะไม่ยอมออกจาก loop จนกว่าจะปิก order หมด ผมไม่ทราบว่าคุณจะใช่ลักษณะได้แต่ของผทใช่ลักษณนี้อ่ะ ผมไม่ทราบว่าคุณจะใช้อย่าไงนะครับ แต่มันต้องมี error อยู่แล้วเราต้องแก้ตามลักษณที่ต้องการครับ เอาไปลองศึกษาดูก่อนครับ
Title: Re: ส่งคำสั่งด้วยมือแล้วขึ้น ReQuote ถ้าเป็น EA จะทำยังไง
Post by: Protector on กันยายน 12, 2009, 12:43:09 am
ขอบคุณครับ วัตถุประสงค์คือใช้เมื่อเวลา EA ถึงจุดควรทำกำไร มันส่งคำสั่งปิด position ไปแล้วอาจไม่ผ่านน่ะครับ  กลัว EA มันจะเลยตามเลย ประมาณว่าปล่อยจังหวะผ่านไปแล้วปิดไม่ได้ก็ช่างมัน กลายเป็นต้องติดสถานะค้างยาว
Title: Re: ส่งคำสั่งด้วยมือแล้วขึ้น ReQuote ถ้าเป็น EA จะทำยังไง
Post by: admin on กันยายน 12, 2009, 12:50:17 am
ขอบคุณครับ วัตถุประสงค์คือใช้เมื่อเวลา EA ถึงจุดควรทำกำไร มันส่งคำสั่งปิด position ไปแล้วอาจไม่ผ่านน่ะครับ  กลัว EA มันจะเลยตามเลย ประมาณว่าปล่อยจังหวะผ่านไปแล้วปิดไม่ได้ก็ช่างมัน กลายเป็นต้องติดสถานะค้างยาว
คล้ายๆๆกับของผมเลยวัตถุประสงค์คุณแต่ server ของโบรเกอร์มีค้างด้วยนะครับ ผมเจอมาแล้ว เราส่งคำสั่งปิดไปแล้วจากคำสั่งวนซ้ำแต่มันเลยราคาที่ส่งไปกลายเป็นว่าไม่ปิด ต้องรอจนราคามันกลับมาทีเดิม ถึงจะปิดให้อ่ะ รอคุณเจอปัญหาก่อนปรึกษาผมได้ ถ้ายังไม่เจออธิบายไปอาจไม่เอาใจ ผมต้องเขียน code แก้เข้าไปอีก
Title: Re: ส่งคำสั่งด้วยมือแล้วขึ้น ReQuote ถ้าเป็น EA จะทำยังไง
Post by: Protector on กันยายน 12, 2009, 12:59:42 am
เข้าใจที่พูดมาเลยครับ(นึกเทียบกับตอนเทรดด้วยมือก็เคยเจอ) เลยต้องมาหารือขอแนววิธีแก้ไขด้วยครับ
Title: Re: ส่งคำสั่งด้วยมือแล้วขึ้น ReQuote ถ้าเป็น EA จะทำยังไง
Post by: admin on กันยายน 12, 2009, 01:08:46 am
แล้วตัวอย่าง code ที่เขียนให้พอที่จะนำไปใช้ได้ไหมครับ หากมีปัญหาอะไรก็มาช่วยกันแก้ไขได้ครับ
Title: Re: ส่งคำสั่งด้วยมือแล้วขึ้น ReQuote ถ้าเป็น EA จะทำยังไง
Post by: Protector on กันยายน 12, 2009, 01:15:43 am
แล้วตัวอย่าง code ที่เขียนให้พอที่จะนำไปใช้ได้ไหมครับ หากมีปัญหาอะไรก็มาช่วยกันแก้ไขได้ครับ
บอกตามตรงครับ ดูแล้วยังใช้ไม่เป็นเลยครับ -____-"
แต่จะลองเอาไปนั่งเพ่งดูสักพัก ไว้อย่างไรจะได้กลับมารบกวนอีกนะครับ
Title: Re: ส่งคำสั่งด้วยมือแล้วขึ้น ReQuote ถ้าเป็น EA จะทำยังไง
Post by: admin on กันยายน 12, 2009, 01:21:37 am
แล้วตัวอย่าง code ที่เขียนให้พอที่จะนำไปใช้ได้ไหมครับ หากมีปัญหาอะไรก็มาช่วยกันแก้ไขได้ครับ
บอกตามตรงครับ ดูแล้วยังใช้ไม่เป็นเลยครับ -____-"
แต่จะลองเอาไปนั่งเพ่งดูสักพัก ไว้อย่างไรจะได้กลับมารบกวนอีกนะครับ
  ได้ครับ มีอะไรปรึกษาได้ครับ