โน้ตสำหรับผู้ที่ต้องการพัฒนาเทรดอัลกอริธึม



ในฐานะที่เป็นคนที่อยู่ในครัวของงานนี้ ฉันต้องการเล่าอะไรบางอย่างให้พวกคุณฟัง เพราะเราไม่ได้สร้างแค่ระบบที่ผลิตสัญญาณ แต่กำลังสร้างโครงสร้างที่คิดได้ และในงานนี้จะก้าวหน้าไม่ใช่ด้วยการท่องจำ แต่ด้วยการเข้าใจ

เมื่อพัฒนาระบบการซื้อขายแบบอัลกอริธึม เป้าหมายของเราไม่ใช่แค่การสร้างบล็อกโค้ดที่ส่งคำสั่งอัตโนมัติ แต่ยังเป็นการเปลี่ยนแปลงให้เป็นโครงสร้างที่สามารถกำหนดพฤติกรรมตลาดที่เฉพาะเจาะจงในลักษณะที่เป็นระบบ สามารถทดสอบได้ และมีความยั่งยืน.

โค้ดของคุณคือเครื่องมือที่อธิบายความคิดของคุณ.
แต่ถ้าคุณมีความคิดที่ไม่ครบถ้วน อัลกอริธึมของคุณจะไม่แสดงผลลัพธ์ตามที่คุณคาดหวังตลอดไป.

1️⃣ การออกแบบกลยุทธ์: หลักการเชิงอัลกอริธึมพื้นฐาน

สิ่งที่ต้องชัดเจนก่อนเขียนอัลกอริธึม:
“คุณเห็นพฤติกรรมใดของตลาดเป็นโอกาสและคุณตรวจสอบได้อย่างไร?”

ตัวอย่างของโซ่ความคิดควรเป็นดังนี้:

การสแกนสภาพคล่อง + ความแตกต่างของการไหลของคำสั่ง → การทดสอบโซน → การถอนตัวที่มีโมเมนตัมต่ำ → การเข้าทำรายการ

ในโครงสร้างนี้มีอะไรอยู่?

-ตัวกระตุ้นเชิงโครงสร้าง (sweep)
- ข้อมูลการอนุมัติ (CVD ความแตกต่าง / Delta burst)
-พื้นที่ทางเทคนิค (zone / order block)
-ตัวกรองเวลาการลดความผันผวน (/ เปิดเซสชัน )

แต่ละโครงสร้างจะกำหนดว่า "เมื่อใดที่ระบบควรทำงาน" ผู้ที่ไม่พัฒนาแนวทางจะสร้างสัญญาณแบบสุ่มเท่านั้น.

2️⃣ การใช้ข้อมูลและตัวชี้วัดขั้นสูง

ดัชนีคลาสสิก (RSI, MACD ฯลฯ ) ตอนนี้ไม่เพียงพอสำหรับระบบอัลกอริธึมมากมาย เพื่อที่จะสามารถอธิบายพฤติกรรมเชิงโครงสร้างและเรียลไทม์ของตลาด คุณจะต้องหันไปใช้ประเภทข้อมูลด้านล่าง:

a) การไหลของคำสั่งและอนุพันธ์

CVD (Delta ปริมาณสะสม)
วิเคราะห์ความสมดุลระหว่างผู้ซื้อและผู้ขายที่แท้จริง หากราคา ลดลง ในขณะที่ CVD เพิ่มขึ้น อาจมีความต้องการแฝงอยู่

Delta (ปริมาณการซื้อ/ขายที่ก้าวร้าว Farkı)
วัดสมดุลการซื้อขายที่รุนแรงในระยะสั้น การระเบิดของเดลต้าภายในโซนแสดงว่าโซนได้รับการยอมรับแล้ว

เปิด (OI) ความสนใจ
แสดงว่าตำแหน่งใหม่เปิดขึ้นหรือไม่ การเพิ่ม OI + การขึ้นราคา → การยืนยันแนวโน้ม การลด OI + การเคลื่อนไหวของราคา → ความเป็นไปได้ในการบีบชอร์ต / กับดัก.

b) ข้อมูลสภาพคล่อง

-แผนที่ความร้อน (ตัวอย่าง: TradingLite / Tensor)
-ความหนาแน่นของหนังสือคำสั่งสปอต
-การวิเคราะห์สวีพ

สามารถวิเคราะห์ข้อมูลและอ่านตลาดได้ การใช้ข้อมูลเพียงอย่างเดียวนั้นไม่เพียงพอ; จะต้องสร้างสถานการณ์ข้อมูลขึ้นมาด้วย

3️⃣ การทดสอบย้อนหลัง วินัยและหลักฐานทางสถิติ

การทำงานของโค้ดไม่ได้หมายความอะไร
ถ้าคุณไม่รู้ว่ารหัสทำงานอย่างไรในข้อมูลประวัติศาสตร์ ผลลัพธ์ที่คุณจะได้รับในตลาดจริงก็เป็นเพียงการคาดเดาเท่านั้น

เมื่อทำการทดสอบย้อนกลับคุณจะต้องวัดเมตริกที่จำเป็น:

Win Rate - อัตราชนะ
Average R - ค่าเฉลี่ยความเสี่ยง:ผลตอบแทน
ความคาดหวัง - ค่าที่คาดหวังต่อการซื้อขาย → (ค่าเฉลี่ยชนะ * อัตราชนะ) - (ค่าเฉลี่ยขาดทุน * อัตราขาดทุน)
Max Drawdown - ช่วงเวลาถอยที่เลวร้ายที่สุด
การกรองตามเวลา - การกรองชั่วโมง, วัน, สัปดาห์
Distribution - CurveTrade ผลลัพธ์กราฟการแจกแจง

นอกจากนี้:

ทดสอบกลยุทธ์แต่ละกลยุทธ์แยกตามชั่วโมง อาจจะทำงานเฉพาะระหว่างเวลา 10:00–13:00 เท่านั้น

ใช้การจำลองมอนติคาร์โล ระบบยังคงเป็นบวกในความแปรผันสุ่มหรือไม่?

ทำการทดสอบนอกตัวอย่าง ทดลองอัลกอริธึมที่คุณพัฒนาในชุดข้อมูลที่ไม่เคยเห็นมาก่อน.

หมายเหตุ: ระบบที่ถูกปรับแต่งไม่ได้รับชัยชนะ ระบบที่ปรับตัวและมีความมั่นคงจะได้รับชัยชนะ.

4️⃣ กระบวนการทดสอบสดและการพัฒนาระบบ

ระบบที่ประสบความสำเร็จในการทดสอบย้อนหลัง อาจไม่ประสบความสำเร็จในชีวิตจริง สาเหตุส่วนใหญ่คือ:

-การหน่วงข้อมูล / slippage / การขยาย spread
-การเปลี่ยนแปลงของสภาวะสภาพคล่องแบบเรียลไทม์
-การแทรกแซงของผู้ใช้จากระบบภายนอก (ปัจจัยที่สำคัญที่สุด)

ด้วยเหตุนี้ในกระบวนการทดสอบสด:

-ทดสอบด้วยคำสั่งจริงด้วยเงินทุนขนาดเล็ก.
-บันทึกประวัติการทำธุรกรรม: เขียนเหตุผลและผลลัพธ์หลังจากแต่ละธุรกรรม.
-ตั้งระบบ Log: สัญญาณใดเกิดขึ้นเมื่อไหร่ ใช้เวลานานเท่าไหร่ ราคาเท่าไหร่?

เมื่อระบบเริ่มทำงานในชีวิตจริง นั่นหมายความว่าระบบนั้น "ทำงาน" อย่างแท้จริง.

ปิด: การแปลงความคิดเป็นโค้ด

การเขียนอัลกอริธึมไม่ใช่งานซอฟต์แวร์ แต่เป็นวินัยในการคิด โค้ดที่แข็งแกร่งที่สุดสะท้อนถึงกลยุทธ์ที่มีความคิดที่เรียบง่ายและชัดเจนที่สุด

ดังนั้นก่อน:

พฤติกรรมตลาดไหนที่ให้โอกาสกับฉัน?
ฉันจะวัดพฤติกรรมนี้ได้อย่างไร?
ฉันจะกระตุ้นการวัดนี้ด้วยอะไร?
เมื่อไหร่ที่ฉันจะถือว่ามันไม่ถูกต้อง?
การแปลงโครงสร้างที่คุณไม่รู้คำตอบไปเป็นโค้ดนั้นเป็นเพียงการเสียเวลา อย่าลืมว่าทุกช่วงเวลามีค่าใช้จ่าย :)

หากคุณต้องการก้าวไปข้างหน้าในเส้นทางนี้ ให้กำหนดกลยุทธ์ของคุณ
อ่านข้อมูล.
คำนวณสถิติของคุณ
ทดสอบในโลกจริง.
และพูดทุกอย่างอีกครั้ง.

#AlgoTrade AlgoZone
EDEN4.18%
ORDER-1.2%
FLOW5.05%
ดูต้นฉบับ
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • รางวัล
  • แสดงความคิดเห็น
  • repost
  • แชร์
แสดงความคิดเห็น
0/400
ไม่มีความคิดเห็น
  • ปักหมุด