EA Programing => ปัญหาที่พบในการเขียน EA => Topic started by: kaiao on กรกฎาคม 20, 2017, 08:57:33 pm
-
ผมอยากได้ แนวทางการเขียน ปิด ออเดอร์ แบบ คิด เป็น % เช่น พ็อตมีกำไร + ทุน แล้ว โตขึ้น 20 % ให้ปิด ออเดอร์ทุกออเดอร์ หรือ พ็อตขาดทุน ไปแลว 10 % ให้ ปิด ออเดอร์ทุกออเดอร์แล้วเริ่มใหม่ด้วยการคิดคำนวณที่ ต้นทุกที่ เหลืออยู่ ในเวลาปัจจุบัน ??? ??? ??? ??? ??? รบกวนชี้แนะด้วยครับ
-
extern int profitpercentwin = 20;
extern int profitpercentlos = 10;
if (AccountEquity()/AccountBalance() *100 ) > profitpercentwin ) Close();
else if (AccountEquity()/AccountBalance() *100 ) < (100-profitpercentlos) ) Close();
-
@D_Diamond เอาเงื่อนไขไปประยุกต์ก็ยัง ปิดออเดอร์ แต่ AccountBalance() ก็ลดลง ตาม เช่นกัน อยากได้แนวทาง ประมาณเก็บ ค่า AccountBalance() เริ่มต้น ตอนยังไม่มี ออเดอร์ มา เป็นตัว คำนวน ใหม่ในทุกรอบนะครับ ชี้แนะด้วยครับ
-
หมายถึงจะให้มันคำนวณจาก balance ตอนเปิดโปรแกรมเท่านั้น ไม่ว่าจะปิดออเดอร์ไปแล้วกี่ชุด ยังงั้นเหรอครับ
งั้นก็ใส่ตัวแปรไปตัวนึงแล้วเอาตัวแปรไปใช้แทน AccountBalance() ครับ
double startbalance=0;
init()
{
startbalance = AccountBalance();
}
แต่ถ้ายังงั้นมันก็จะเทรดได้แค่ครั้งเดียวสิครับ
-
??? ??? ??? ??? นั้นสิครับ จะมีทางไหน ที่ จะให้มันกลับมาตรวจสอบค่า AccountBalance() เริ่มต้น เมื่อ ปิดทุกออเดอร์ แบบวน รอบ เก็บค่าเริ่ม ทุกครั้งที่ ได้ตามเงื่อนไข้ให้เก็บค่า AccountBalance() เริ่มต้นใหม่ D_Diamond เก็บแบบ ไหนดีครับ
-
ผมไม่เข้าใจว่าคุณต้องการอะไร จะเอาค่านั้นไปทำไม เห็นโพสแรกบอกคำนวณจากทุนปัจจุบัน อยู่ดีๆมาเปลี่ยนเป็นทุนเริ่มต้น ใช้ทุนเริ่มต้นมันก็คำนวณได้รอบเดียวอยู่แล้วครับ
-
:'( :'( :'(ผมต้องขอโทษด้วยครับ ที่ใช้คำสับสน ขอโทษ ด้วยครับ :'( :'( :'( :'( ความหมายคือ จบการ Close all 1 รอบ แล้ว ให้ คิดค่าที่ AccountBalance() ในการออกออเดอร์ ใหม่ นะครับ