Open Forex4you Account

Server รัน EA 1000 / ปี

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

Author Topic: อยากเขียน ea เปิดตาม Indicator ครับ  (Read 17039 times)

asakurayo7

  • Newbie
  • *
  • Posts: 3
อยากเขียน ea เปิดตาม Indicator ครับ
« on: พฤษภาคม 31, 2013, 09:57:15 am »



ดังภาพ
ให้เปิด sell เมื่อราคา ชนเส้นสีแดงด้านบน
และปิด sell เมื่อราคาชนเส้นสีเขียวด้านแล่าง และเปิด buy 

และปิด buy เมื่อ ชน เส้นสีแดงด้านบน เพื่อเปิด sell

ตัวอีเอนี้จะเปิดครั้ง ละ 1 order เท่านั้นครับ สามารถ กำหนด lot size ที่ต้องการจะเปิดได้ครับ
ผมมีตัว  Indicators  เป็น ไฟล์ .ex4 

จะเริ่มเขียนอย่างไรดีครับ หรือมีผู้ใดรับเขียนบ้างครับ

admin

  • Administrator
  • Hero Member
  • *****
  • Posts: 2386
Re: อยากเขียน ea เปิดตาม Indicator ครับ
« Reply #1 on: พฤษภาคม 31, 2013, 12:55:27 pm »
1. เราต้องใช้ icustom เพื่อหาค่าของเส้นทั้งสองก่อนครับว่าถูกเก็บไวที่ไหน
2.เมื่อเราทราบว่าค่าเส้นเก็บที่ buffer ตัวไหนแล้วจากนั่นก็สร้างเงื่อนไขเลยครับ  โดยเงื่อนไขมีสองแบบ กล่าวคือแบบแรกเป็นเงื่อนไขเมื่อยังไม่มี order ก็ให้เปิดตามธรรมดา แบบที่ 2 คือเงื่อนไขที่ในบัญชีเรามี order อยู่แล้วก็ให้ตรวจสอบเงื่อนไขปิดของ Order ครับ

ส่วนการกำหนด lot size ได้ก็ตั้ง
extern double Lot =0.1 ;
แบบนี้ที่ด้านบนสุดของ EA ครับ
 หลักๆคร่าวๆก็มีแค่นี้ครับ

asakurayo7

  • Newbie
  • *
  • Posts: 3
Re: อยากเขียน ea เปิดตาม Indicator ครับ
« Reply #2 on: พฤษภาคม 31, 2013, 02:34:12 pm »
ขอบคุณครับ สอบบถามอีกครับ
ว่าจะเช็ค ราคา ถ้า ชนจุดที่ เส้นสี แดง แล้วเปิด order  ต้องเขียน แบบไหนหรอครับ

admin

  • Administrator
  • Hero Member
  • *****
  • Posts: 2386
Re: อยากเขียน ea เปิดตาม Indicator ครับ
« Reply #3 on: พฤษภาคม 31, 2013, 03:27:58 pm »
ชนคือการตัดขึ้นครับ จากรูปเราจะเห็นใช้ไหมครับว่า ราคาจะต่ำกว่าสีแดงตลอด แต่ถ้ามันตัดเมื่อไรก็คือราคาปัจจุบัน เรามากกว่าหรือเท่ากับเส้นสีแดง ครับใช้เงื่อนไข if ตรวจสอบแบบนี้

If( Bid >= ตัวแปรที่เก็บค่าเส้นสีแดงครับ )
หากเป็นจริงก็จะให้เปิด order ครับ

asakurayo7

  • Newbie
  • *
  • Posts: 3
Re: อยากเขียน ea เปิดตาม Indicator ครับ
« Reply #4 on: มิถุนายน 02, 2013, 06:49:55 pm »
ชนคือการตัดขึ้นครับ จากรูปเราจะเห็นใช้ไหมครับว่า ราคาจะต่ำกว่าสีแดงตลอด แต่ถ้ามันตัดเมื่อไรก็คือราคาปัจจุบัน เรามากกว่าหรือเท่ากับเส้นสีแดง ครับใช้เงื่อนไข if ตรวจสอบแบบนี้

If( Bid >= ตัวแปรที่เก็บค่าเส้นสีแดงครับ )
หากเป็นจริงก็จะให้เปิด order ครับ

ขอบคุณครับ  ;) ;D