EA Programing => ปัญหาที่พบในการเขียน EA => Topic started by: linconz on พฤศจิกายน 09, 2009, 02:52:32 am
-
ตามนั้นครับ
ตอนนี้ติดมาก icustom เนี่ย
รออยู่น๊ะ
-
ได้ครับ จะเขียนให้รออีกสักหน่อยนะครับช่วงนี้ งานยุ่งมากครับเดียวเสร็จแล้วจะส่งให้ครับ
-
ผมขอตอบแทนคุณ Admin ก่อนนะครับ เผื่อเขาต้องการใช้งานด่วน
หลักการอย่างไม่ละเอียดนะ
รูปแบบ ของ icustom ประกอบด้วย
double value = iCustom( string symbol, int timeframe, string name, ..., int mode, int shift)
ตัวอย่าง
double FisherLime = iCustom(NULL,0,"Fisher",1,0);
1.ในที่นี้กำหนดชื่อตัวแปร ว่า FisherLime
2.Null ,0, (คงจะทราบนะครับ)
3.ในเครื่องหมายคำพูด "Fisher" หมายถึงชื่ออินดิเคเตอร์นะครับต้องไม่ผิดนะครับและอินดิเคเตอร์ก็ต้องอยู่ในไดเร็กทอรี่ที่ใช้งานด้วยคือ expert/indicators
4. และเลข 1 ตัวนี้หมายถึงค่าของบัฟเฟอร์ หรือ line ในอินดิเคเตอร์ครับ ค่าที่เราต้องการดึงมาใช้ในอีเอนะครับในที่นี้จะมี 0-7
5. เลข 0 ตัวถัดมาคือ ค่าของอินดิเคเตอร์ตัวที่เราเรียกนะจะเท่ากับค่าปัจจุบัน (ถ้าเป็น 1 ก็คือค่าครั้งก่อนถอยหลังไป 1 แท่งเทียน) (ถ้าเป็น 2 ก็ถอยหลังไป 2 แท่งเทียน)
ผมอาจจะอธิบายไม่เก่งนะครับ
ยังงัยก็รอคุณ Admin ในบทเรียนอีกรอบนะครับ
-
รอทดสอบนะครับ
;D ;D ;D
-
ขอบคุณมากครับ
ไอ้คร่าวๆก็พอรู้ครับ งูๆปลาๆ เห็นบางตัวมัน เป็น Null,0,0,6,3,2,3,0 โอ้วววว เยอะจังแฮะ
เลยอยากรู้การใช้งานแบบละเอียดอะครับ
แต่ก็ขอบคุณมากๆน๊ะครับ มีเทคนิคอะไรดีๆมาแบ่งปันกันอีกน๊ะครับ
-
:D :D :D
-
ผมขอตอบแทนคุณ Admin ก่อนนะครับ เผื่อเขาต้องการใช้งานด่วน
หลักการอย่างไม่ละเอียดนะ
รูปแบบ ของ icustom ประกอบด้วย
double value = iCustom( string symbol, int timeframe, string name, ..., int mode, int shift)
ตัวอย่าง
double FisherLime = iCustom(NULL,0,"Fisher",1,0);
1.ในที่นี้กำหนดชื่อตัวแปร ว่า FisherLime
2.Null ,0, (คงจะทราบนะครับ)
3.ในเครื่องหมายคำพูด "Fisher" หมายถึงชื่ออินดิเคเตอร์นะครับต้องไม่ผิดนะครับและอินดิเคเตอร์ก็ต้องอยู่ในไดเร็กทอรี่ที่ใช้งานด้วยคือ expert/indicators
4. และเลข 1 ตัวนี้หมายถึงค่าของบัฟเฟอร์ หรือ line ในอินดิเคเตอร์ครับ ค่าที่เราต้องการดึงมาใช้ในอีเอนะครับในที่นี้จะมี 0-7
5. เลข 0 ตัวถัดมาคือ ค่าของอินดิเคเตอร์ตัวที่เราเรียกนะจะเท่ากับค่าปัจจุบัน (ถ้าเป็น 1 ก็คือค่าครั้งก่อนถอยหลังไป 1 แท่งเทียน) (ถ้าเป็น 2 ก็ถอยหลังไป 2 แท่งเทียน)
ผมอาจจะอธิบายไม่เก่งนะครับ
ยังงัยก็รอคุณ Admin ในบทเรียนอีกรอบนะครับ
ตอบมานี้ก้เกือบจะครบแล้วครับ แต่อยากให้พิจารณาที่ อินดิเตอรือีกหน่อยครับ เพราะไม่ใช่ว่าอินดิเคเตอร์ทุกตัวจะส่งค่าออกมาได้นะครับ ให้ลองเปิด code ของอินดิเคเตอร์ขึ้นมาครับ ในส่วน init() จะเจอฟังก์ชั่น SetIndexBuffer ให้ดูครับว่ามันมีการส่งค่าออกมากี่ตัว ค่าที่ส่งออกมาด้วยฟังก์ชั่นตัวนี้จะแสดงบนกราฟนะครับ เวลาที่เราเอา เม้าส์ไปชี้ แต่ ก้ไม่ใช้ทุกอินดิเคเตอร์นะครับที่จะส่งค่าออกมาด้วยวิธีนี้ ตัวอย่าง บางครั่งอินดิเคอร์โชว์ค่าเป็นสี เราก็ไม่สามารถใช้วิธีนี้อ่านค่าสีได้นะครับต้องใช้วิธีอื่น
-
ขอบคุณมากครับ
ไอ้คร่าวๆก็พอรู้ครับ งูๆปลาๆ เห็นบางตัวมัน เป็น Null,0,0,6,3,2,3,0 โอ้วววว เยอะจังแฮะ
เลยอยากรู้การใช้งานแบบละเอียดอะครับ
แต่ก็ขอบคุณมากๆน๊ะครับ มีเทคนิคอะไรดีๆมาแบ่งปันกันอีกน๊ะครับ
จริงๆๆก็ไม่มีไรพิเศษหรอกครับ ก็มาจากนี้ทั้งนั่น
double iCustom( string symbol, int timeframe, string name, ..., int mode, int shift)
สำคัญจริงก็ 2 ตัวท้าย คือ mode คือค่าที่อ่านจากฟังกชั่น SetIndexBuffer ในอินดิเคเตอร์ กับ shift คือลำดับของค่าที่ถูกส่งออกมาแล้วเท่านั่นเองครับ