กองทุน SPDR GOLD SHARES
ถือทองก่อนหน้า
ถือทองล่าสุด
0.00
*หน่วยตัน / ราคาอ้างอิงล่าสุดจากสมาคมค้าทองคำ
สถิติกองทุน SPDR
ราคาทองคำแท่ง 96.5%
ราคาอ้างอิงล่าสุดจากสมาคมค้าทองคำ
ครั้งที่
ราคาก่อนหน้า
ราคาล่าสุด
0
(หน่วย บาท*) / อัปเดตล่าสุดเมื่อวันที่ 13 ก.ค. 2566 เวลา 13:04 น.
สถิติราคาทองคำ ไทย

ขอ code สำหรับ random time / delay time ออก order หน่อยครับ (lab test)

  • 3 replies
  • 1,472 views
ขอ code สำหรับ random time / delay time ออก order หน่อยครับ (lab test)
« เมื่อ: 08, พฤศจิกายน 2019, 02:29:18 AM »

มี code ที่ดีกว่านี้ หรือ ไอเดียที่ดีกว่านี้ใหมครับ

ผมจะลองทดสอบการออก order ที่ delay หรือ เวลาไม่ตรงกับ signal ครับ

ถ้าใช้คำสั่ง  random + sleep จะ work ใหมครับ

ที่แน่ๆ คือ ต้องการให้ order ออกแน่นอน 100% แต่ ไม่ใช่เวลานั้นๆ ที่ทริก signal

MathRand()%1000*1000  ใช้สุ่มเวลา

sleep(1000)  เท่ากับ 1 วืนาที


Sleep (MathRand()%1000*100)    ประมาณ 10-90 วินาที
Sleep (MathRand()%1000*1000)   ประมาณ 100-900 วินาที
Sleep (MathRand()%1000*10000)   ประมาณ 1000-9000 วินาที

วิธีใช้
Sleep (MathRand()%1000*10000)
OrderSent

Sleep (MathRand()%1000*10000)
Trade.Buy(NULL,NULL,0,0,0,"")

ประมาณนี้คือ เจอ sleep ก่อน แล้วมันหยุด แล้วถึงจะ ออก order ตามมา
code แบบนี้สเถียร หรือไม่ครับ


ไอเดีย เราต้องการความแม่นยำในการออก order ตรงซิกแนล  แต่ถ้าไม่ไม่แม่น แสดงว่าพลาดใช่ใหม
ดังนั้น ซิกแนลที่ต้องการความแม่นยำสูงจะพลาดง่าย  แต่ถ้าซิกแนลที่มีความยืดหยุ่นสูงละ

ถ้าอีเอทำงานงาน พร้อมกับ  delay แล้วยังเทรดสำเร็จ แสดงว่า work เพราะทุกครั้งมันจะ delay ไม่เท่ากันตลอด

กราฟมีความผันผวนสูง และกราฟของแต่ละโบรกก็ไม่เท่ากัน มีความลาดเคลื่อนตั้งแต่ เวลาของแต่ละโบรกต่าง ทำให้แท่งเทียนต่างด้วยหรือไม่
ความคลาดเคลื่อนในการรับข้อมูล tick feed จากตลาด ส่งไปยัง server ของ provider แล้วส่งไปยัง broker server ทำให้ต่างกันด้วย
รวมไปถึงอินเตอร์เน็ตที่เราใช้ด้วย ทำให้มันคลาดเคลื่อน

โบรกอาจจะตั้ง random ความคลาดเคลื่อนไว้หลอกเราก็ได้นะ 555

ระบบที่ดีอาจจะต้องรองรับกับความคลาดเคลื่อนได้

*

iRuler

  • 1,282
Re: ขอ code สำหรับ random time / delay time ออก order หน่อยครับ (lab test)
« ตอบกลับ #1 เมื่อ: 08, พฤศจิกายน 2019, 08:51:29 AM »
ถ้ามันเป็นระบบเทรดที่ต้องการความแม่นยำในการออก order แล้วไปหน่วงเวลาเขา แล้วมันไปทำให้เขาเทรดไม่สำเร็จ
จะไปตัดสินว่าระบบนี้ไม่ดี ไม่ได้ ระบบจะดีหรือไม่ดีขึ้นอยู่กับคนที่ใช้มัน ถ้าเอาไปใช้ไม่ถูกเงื่อนไข ไม่ทำตามข้อแม้ที่เขาออกแบบไว้ แล้วมันเทรดไม่แม่น ก็ไม่ควรใช้เหตุผลนี้ไปตัดสินระบบ

ดังนั้นระบบที่ต้องการความแม่นยำสูงก็ไม่ควรจะเอามาเป็น signal ตั้งแต่แรก แต่ถ้า broker, signal provider มีการการันตีราคาไว้ อันนี้ก็ว่ากันไป


ตอบคำถามข้างบน
คำสั่งนั้นก็น่าจะใช้ได้แหล่ะครับ แต่ก็ทดลองทำได้แค่ delay ออกไป ไม่สามารถทดลองเปิด order ก่อน signal ได้ (ซึ่งมันก็คงทำไม่ได้อยู่แล้ว)

(TH)**

Re: ขอ code สำหรับ random time / delay time ออก order หน่อยครับ (lab test)
« ตอบกลับ #2 เมื่อ: 08, พฤศจิกายน 2019, 01:05:16 PM »
อ้างจาก: iRuler ที่ 08, พฤศจิกายน  2019, 08:51:29 AM
ถ้ามันเป็นระบบเทรดที่ต้องการความแม่นยำในการออก order แล้วไปหน่วงเวลาเขา แล้วมันไปทำให้เขาเทรดไม่สำเร็จ
จะไปตัดสินว่าระบบนี้ไม่ดี ไม่ได้ ระบบจะดีหรือไม่ดีขึ้นอยู่กับคนที่ใช้มัน ถ้าเอาไปใช้ไม่ถูกเงื่อนไข ไม่ทำตามข้อแม้ที่เขาออกแบบไว้ แล้วมันเทรดไม่แม่น ก็ไม่ควรใช้เหตุผลนี้ไปตัดสินระบบ

ดังนั้นระบบที่ต้องการความแม่นยำสูงก็ไม่ควรจะเอามาเป็น signal ตั้งแต่แรก แต่ถ้า broker, signal provider มีการการันตีราคาไว้ อันนี้ก็ว่ากันไป


ตอบคำถามข้างบน
คำสั่งนั้นก็น่าจะใช้ได้แหล่ะครับ แต่ก็ทดลองทำได้แค่ delay ออกไป ไม่สามารถทดลองเปิด order ก่อน signal ได้ (ซึ่งมันก็คงทำไม่ได้อยู่แล้ว)

(TH)**

ขอบคุณมากครับท่าน

ทีแรกผมจะใช้เวลาครั้บ แต่กลัวจะพลาดเวลาไม่ตรงทำให้พลาดออก order ไป

ประมาณนี้

   ตรงซิกแนลใส่
   signal="sell"
   TimeOrder = TimeCurrent()+MathRand()%1000*10;
   
   ตรงออก order ใส่
   if (TimeCurrent()==TimeOrder && Signal="sell") OrderSend

เลยคิดใช้เป็น sleep() แทนดีกว่า เพราะมันออก order แน่ๆ หลังจากหลุดเวลาจาก sleep แล้ว




*

iRuler

  • 1,282
Re: ขอ code สำหรับ random time / delay time ออก order หน่อยครับ (lab test)
« ตอบกลับ #3 เมื่อ: 08, พฤศจิกายน 2019, 03:00:30 PM »
ถ้า ทำใน ontick แล้วสมมติว่า tick มันมาตอนเวลามันเลยไปแล้ว มันก็จะไม่เข้าเงื่อนไขนะครับ
ถ้าทำใน ontick() น่าจะได้