Open Forex4you Account

Server รัน EA 1000 / ปี

สั่งชื้อคู่มือการโปรแรกม MQL4

Author Topic: ต้องการให้ea เทรดแค่ 1 รอบ ต่อการใส่EAลงในกราฟ  (Read 10672 times)

toonrx09

  • Newbie
  • *
  • Posts: 36
รบกวนสอบถามครับ

ต้องการให้ea เทรดแค่ 1 รอบ ต่อการใส่EAลงในกราฟ
 
 เช่น โยนEA ลงในกราฟ ก็ให้มันเทรดไปเรื่อยๆจนจบเงื่อนไข ก็หยุดเทรด ถ้าต้องการให้เทรดต่อต้องโยนใส่เข้าไปใหม่ครับ

ไม่ทราบว่าต้องทำยังไง ขอบคุณครับ

admin

  • Administrator
  • Hero Member
  • *****
  • Posts: 2386
ใช้ตัวแปร แบบ  global variable  เข้าช่วยครับ โดยประกาสตัวแปรไวก่อนการเริ่มของ start() ฟังก์ชั่น  ใน start() ก็ให้ EA ทำงานไปตราบเท่าที่ค่า ตัวแปรยังเป้นค่าที่กำหนด แต่เมื่อเราเปิด order เมื่อไรให้เขียนกำหนดค่าตัวแปรใหม่ครับ ให้ต่างไปจากเดิมแค่นี้ ea ก็จะกลับมาทำงานไม่ได้แล้วครับ ตัวแปรประเภทนี้จะมีผลไปจนกว่าเราจะ ถอด EA ออกแล้วใส่ใหม่ครับ หากไม่มีการเปลี่ยนค่า

toonrx09

  • Newbie
  • *
  • Posts: 36
รบกวนช่วยยกตัวอย่างได้ไหมครับ...

ผมมือใหม่มากๆ กะว่าจะเอาไปวางบน RDPที่สมัครไว้กับบอร์ดครับ

รบกวนด้วยครับ

admin

  • Administrator
  • Hero Member
  • *****
  • Posts: 2386
จาก code ด้านล่างให้สักเกตค่า I ค่า I ตอนเริ่มจะเท่ากับ 0 หากเปิด order ไปแล้วมันจะเป็น 1 แล้วมันจะเป้น 1 ไปตลอดแม้ว่าเราจะปิด EA แล้วเปิดขึ้นมาใหม่หรือ ปิด mt4 แล้วเปิดขึ้นมาใหม่ ค่า 1 ก็ยังอยู่ จนกว่าเราจะ ปิดกราฟ นั่นแล้วเปิดขึ้นมาใหม่ หรือ ติดตั้ง EA ใหม่โดยการเอาออกแล้วใส่หรือ หรือ เรา compile EA ใหม่เท่านั่นครับ

int i=0;
int start()
  {  if(i==0)
      {
      OrderSend(Symbol(),OP_BUY,0.1,Ask,3,0,0,"one",123456,0,Green);
       i=1;
       
      }
     
      Print("I ",i);

   return(0);
  }

toonrx09

  • Newbie
  • *
  • Posts: 36
ออ...ขอบคุณมากครับ