EA Programing => ปัญหาที่พบในการเขียน EA => Topic started by: fanghappy on พฤศจิกายน 20, 2014, 03:22:11 pm
-
ขอออกตัวก่อนเลยว่าเพิ่งได้เริ่มเขียน EA เองเมื่อไม่กี่อาทิตย์ที่ผ่านมา ศึกษาจากการแกะ EA ของคนอื่นแล้วนำมาดัดแปลงครับ
แต่มีอยู่จุดนึงที่ผมสงสัยครับ
ตัวอย่าง
iMACD(NULL,0,15,35,9,PRICE_CLOSE,MODE_MAIN,0);
iMACD(NULL,0,15,35,9,PRICE_CLOSE,MODE_MAIN,1);
iMACD(NULL,0,15,35,9,PRICE_CLOSE,MODE_MAIN,2);
iMACD(NULL,0,15,35,9,PRICE_CLOSE,MODE_MAIN,3);
ผมเข้าใจว่ามันเป็นการประกาศเพื่อเรียกค่า indicator แล้วนำค่าที่ได้มาคำนวนตาม Logic ของเรา แต่ที่ผมไม่ทราบคือ
ตัวเลยข้างหลังของแต่ละอันคืออะไรครับ 0 1 2 3 พอผมดีแกะ EA ตัวนึงมา แล้วมีเงื่อนไขแบบนี้ครับ iMACD(NULL, MACDTimeFrame, 14, 26, 9, PRICE_CLOSE, MODE_MAIN, 0) > iMACD(NULL, 0, 14, 26, 9, PRICE_CLOSE, MODE_MAIN, 1) แล้วให้ ...... ผมไม่เข้าใจว่า iMACD กับ iMACD มันจะต่างกันยังงัยครับ ลองเปลี่ยนค่าก็แล้ว แต่ก็ไม่มีอะไรเปลี่ยนแปลง ผมงงมากเลยครับ แล้วตัวเลขข้างหลังสุดคืออะไร ถ้าจะบอกว่าเป็น Shift
ก็ไม่น่าจะใช่นะครับ จากที่ผมเดา เพราะ MACD ไม่มี Shift หรือเปล่าใช่มั้ยครับ
รบกวนผู้ชำนาญ และ Admin ด้วยนะครับ ขอบพระคุณมากๆครับ :)
-
ค่าพารามิเตอร์ของ อินดิเคเตอรืที่เราต้องการเรียกค่าขึ้นมาใช้ไงครับ
double iMACD(
string symbol, // symbol
int timeframe, // timeframe
int fast_ema_period, // Fast EMA period
int slow_ema_period, // Slow EMA period
int signal_period, // Signal line period
int applied_price, // applied price
int mode, // line index
int shift // shift
);
-
shift ในทีนี้หมายถึงจะเอาค่าของอินดิเคเตอร์ในแท่งไหนบนกราฟครับ
ปกติจะเป็น 0 คือกราฟแท่งปัจจุบัน จะเอาแท่งไหนก็นับย้อนไปทางซ้ายครับ
จากตัวอย่างก็คือ macd แท่งปัจจุบัน > macd แท่งที่แล้ว
-
อ้อ ขอบคุณมากครับผม ไหนๆก็ไหนๆ จะได้ไม่เปลืองกระทู้ที่ตั้ง ผมขอถามอีกซักอย่างนะครับ
พอดีตอนนี้ผมเขียนให้มันแสดงรายละเอียดบน Chart ได้แล้ว
แต่อยากได้ที่มี BG เหมือนในรูปอะครับ ไม่ทราบว่าต้องใช้คำสั่ง หรือ Code ตัวไหนครับผม
แต่ถ้ามีไฟล์ .mq4 ของ EA ตัวนี้ด้วย จะเป็นพระคุณอย่างยิ่งครับผม
^^