คู่มือ dashboard
หน้านี้ใช้เมื่อเปิด dashboard แล้วไม่แน่ใจว่า tab ไหน card ไหน ปุ่มไหนมีไว้ทำอะไร · ทุกส่วนอธิบายว่ามีไว้ทำอะไรก่อน แล้วค่อยบอกวิธีใช้
ยังไม่เคยเห็นระบบนี้เลย → เริ่มที่ ภาพรวมระบบ backtest ก่อน แล้วค่อยกลับมาหน้านี้
คำที่ใช้ในหน้านี้
| คำ | ความหมาย |
|---|---|
| EA (Expert Advisor) | program ที่ trade อัตโนมัติใน MT5 · file source คือ .mq5 · file ที่ MT5 run ได้คือ .ex5 |
| compile | แปลง .mq5 เป็น .ex5 · ยังไม่ compile = MT5 run EA นั้นไม่ได้ |
| backtest | ให้ EA trade บนราคาย้อนหลังใน Strategy Tester ของ MT5 (เรียกสั้น ๆ ว่า tester) แล้วได้รายงานผล |
| broker | บริษัทที่เปิดบัญชี trade ให้ · แต่ละ broker มีราคาและ spread ต่างกันเล็กน้อย |
| บัญชี demo | บัญชีทดลองของ broker ใช้เงินปลอม · kit ใช้บัญชี demo ทั้งหมด |
| terminal | MT5 หนึ่งตัว (file terminal64.exe) · ใน kit หนึ่งบัญชี demo = MT5 หนึ่งตัว อยู่ที่ mt5\MT5_<ชื่อ>\ |
.set / preset |
file เก็บค่า input ของ EA หนึ่งชุด · ชื่อ preset คือส่วนท้ายของชื่อ file เช่น LAB_MACROSS_v1.00_default.set มี preset ชื่อ default |
| config | file bt\config*.yaml บอกระบบว่าจะ backtest EA ไหน บน broker ไหน ช่วงวันที่ไหน · ทุก key อธิบายใน คู่มือ config |
| งาน | backtest หนึ่งครั้ง = .set หนึ่ง file × broker หนึ่งตัว |
| queue | รายการงานที่รอ run ทีละงานจนหมด |
| รายงาน | file .htm ที่ tester เขียนเมื่อ run จบ · วิธีอ่านอยู่ใน S5 |
| tick | ราคาทุกครั้งที่เปลี่ยน · backtest ที่เชื่อได้ต้องใช้ tick จริงจาก broker ไม่ใช่ tick ที่ MT5 สร้างเอง |
เปิด dashboard
dashboard คือหน้า web บนเครื่องของคุณเอง ใช้คุมระบบ backtest ทั้งหมด · ทุกปุ่มเรียก bt\ea-bt.exe ตัวเดียวกับที่พิมพ์ใน PowerShell — กดปุ่มกับพิมพ์คำสั่งได้ผลเหมือนกัน (คู่มือคำสั่ง)
- double-click
2-เปิดหน้าคุม.batใน folder kit → หน้าต่างดำเปิดค้าง · ห้ามปิดระหว่างใช้ ปิดแล้ว dashboard ดับ - browser เปิด
http://127.0.0.1:8770เอง · ถ้าไม่เปิด พิมพ์ที่อยู่นี้ใน browser เอง - หน้าจอ refresh ตัวเองทุก 2 วินาที ไม่ต้องกด reload
tab ทั้งหมด
| tab | มีไว้ทำอะไร | ใช้ใน Standard |
|---|---|---|
| ระบบ backtest | เพิ่มบัญชี demo · เลือก EA และ .set · ตั้งช่วงวันที่ · ส่งงานเข้า queue · ดูความคืบหน้า |
✓ |
| สถานะกลยุทธ์ | ดูว่า EA แต่ละตัวไปถึงขั้นไหนของงานวิจัยแล้ว ผ่านหรือตก · อ่านอย่างเดียว | ✓ |
| เครื่องมือวิเคราะห์ | ปุ่มของเครื่องมือที่ใช้ก่อน run (check tick · หาช่วงวันที่) และหลัง run (อ่านผล · ตัดสิน) | ✓ |
| skill | คำอธิบาย skill ของ Claude Code ที่มากับ kit · ไม่มีปุ่มสั่งงาน | — (ใช้ใน Advanced) |
tab ระบบ backtest
tab นี้คือที่สั่ง backtest · card เรียงจากบนลงล่างตามลำดับที่ใช้จริง: บัญชี → สั่ง run → queue → เลือก .set → log → walk-forward → การตั้งค่า
★ dashboard แก้ file config ที่เลือกอยู่ตรง ๆ ไม่ได้สร้างสำเนา · อยากเก็บค่าเดิม ให้ copy file ก่อน
card "MT5 ต่อ broker"
มีไว้ทำอะไร: รายชื่อ MT5 ที่ระบบจะใช้ run backtest · หนึ่งแถว = หนึ่ง broker = MT5 หนึ่งตัว · EA ตัวเดียวกันถูก run บนทุกแถวที่ tick "ใช้" ไว้ จึงได้ผลข้าม broker ใน queue เดียว

card MT5 ต่อ broker ตอนยังไม่มีบัญชี: หัวตาราง ใช้ · ชื่อ · path ของ terminal64.exe · มี file · สัญลักษณ์ · portable · ปุ่ม + เพิ่ม MT5 · ค้นหา MT5 ในเครื่อง · บันทึก broker · ส่วน เพิ่มบัญชี demo กางอยู่ข้างล่าง (ตัวหนังสือจางในช่องเป็นตัวอย่าง)
| column | คืออะไร | ใช้ยังไง |
|---|---|---|
| ใช้ | เปิด/ปิด broker นี้ในรอบ run | เอา tick ออก = ข้าม broker นี้ชั่วคราว เช่น บัญชีที่ไม่มี tick จริงในช่วงที่จะ test · แถวยังอยู่ |
| ชื่อ | ชื่อ broker ในระบบ | กลายเป็นชื่อ folder ผล · ตั้งแล้วอย่าเปลี่ยน ไม่งั้นผลเดิมแยกไปอีก folder |
| path ของ terminal64.exe | MT5 ตัวที่ใช้ run | บัญชีที่เพิ่มด้วยฟอร์ม "เพิ่มบัญชี demo" เป็น mt5\MT5_<ชื่อ>\terminal64.exe ให้เอง |
| มี file | ระบบหา terminal64.exe ที่ path นั้นเจอไหม |
✓ = เจอ · ✕ = ไม่เจอ (path ผิด หรือ folder ถูกลบ) → run ไม่ได้ |
| สัญลักษณ์ | ชื่อทองของ broker นั้น | ต้องตรงตัวอักษรกับ Market Watch ของ MT5 (เช่น XAUUSD หรือ XAUUSDm) · ผิด = tester หา symbol ไม่เจอ |
| portable | เปิด MT5 แบบ /portable |
tick ไว้เสมอ — ข้อมูลของ MT5 ตัวนั้นอยู่ใน folder ของมันเอง ไม่ปนกับ MT5 ตัวอื่น |
| ✕ | ลบแถวออกจากตาราง | ลบแค่รายชื่อ ไม่ลบ folder MT5 · มีผลหลังกด "บันทึก broker" |
| ปุ่ม | ทำอะไร |
|---|---|
| + เพิ่ม MT5 | เพิ่มแถวว่างให้กรอกเอง — ใช้เมื่อมี MT5 ที่ login ไว้แล้ว ไม่ต้องให้ระบบ copy ให้ |
| ค้นหา MT5 ในเครื่อง | scan หา terminal64.exe ในเครื่อง แล้วเพิ่มตัวที่ยังไม่อยู่ในตาราง · ตัวที่หาสัญลักษณ์ทองไม่เจอจะไม่ถูก tick "ใช้" ต้องกรอกเอง |
| บันทึก broker | เขียนตารางลง config ที่เลือกอยู่ · แก้ตารางแล้วไม่กดปุ่มนี้ = ไม่มีผล |
ส่วน "เพิ่มบัญชี demo" (กดเครื่องหมาย + เพื่อกาง)
มีไว้ทำอะไร: สร้าง MT5 ตัวใหม่สำหรับบัญชี demo หนึ่งบัญชีโดยไม่ต้องติดตั้งเอง · ระบบ copy MT5 ต้นแบบ (mt5\_template\) เป็นตัวใหม่ → login ให้ → ปิด → เพิ่มแถวในตารางข้างบน · ขั้นตอนเต็มรวมครั้งแรกของแต่ละ broker อยู่ใน คู่มือติดตั้ง
| field | กรอกอะไร | ระวัง |
|---|---|---|
| ชื่อเรียก | ชื่อ broker นำหน้า เช่น RoboForex-Demo |
ใช้ได้แค่ A–Z 0–9 - _ · กลายเป็นชื่อ folder mt5\MT5_<ชื่อ>\ |
| เลขบัญชี (login) | เลขบัญชีจาก email ของ broker | ตัวเลขล้วน |
| server | ชื่อ server จาก email ของ broker เช่น RoboForex-ECN |
สะกดตรงทุกตัวอักษร |
| ชื่อสัญลักษณ์ทอง | เช่น XAUUSD |
ดูใน Market Watch ของ MT5 |
| รหัสผ่าน | รหัสผ่านบัญชี demo | ส่งตรงไปที่ MT5 ไม่ถูกเก็บในระบบ |
| ปุ่ม | ทำอะไร |
|---|---|
| เปิด MT5 ต้นแบบ | เปิด mt5\_template ให้ค้นชื่อ broker ใน File → Open an Account แล้วกด Cancel · ทำครั้งแรกของ broker ใหม่ทุกตัว · ห้าม login ในต้นแบบ |
| ตรวจแผน | ตรวจ field ทั้งหมดโดยยังไม่แตะอะไร — บอกว่าจะสร้าง folder ไหน · ชื่อซ้ำไหม · MT5 ต้นแบบรู้จัก server นี้ไหม |
| เพิ่มบัญชี | ทำจริง: copy → เปิด MT5 → login → ปิด ใช้เวลาราว 1–2 นาที · ผลขึ้นในกล่องข้างล่าง |
login ไม่ผ่าน → อ่านข้อความในกล่อง · ระบบลบ folder ที่เพิ่ง copy ให้เอง แก้แล้วกดเพิ่มบัญชีใหม่ได้

กล่องผลหลังกด เพิ่มบัญชี สำเร็จ: บรรทัด plan: (เลขบัญชีปิดไว้ในภาพ) แล้ว ✓ ครบหกบรรทัด
card "สั่ง run"
มีไว้ทำอะไร: run config ที่เลือกอยู่ทันที ไม่ผ่าน queue · ใช้ตอนลองสั้น ๆ และใช้ dry-run ตรวจแผนก่อนทุกครั้ง · งานจริงให้ส่งเข้า queue (card ถัดไป)

card สั่ง run: จุดสี ว่าง ซ้ายสุด · ปุ่ม run ทั้งหมด · ทดสอบ 1 ตัว/broker · dry-run · หยุด · แถว "คำสั่งอื่น" ข้างล่าง
| ส่วน | คืออะไร |
|---|---|
| จุดสี + ข้อความ | ว่าง = ไม่มีอะไร run · กำลัง run = มีงานอยู่ ปุ่ม run ทุกปุ่มถูกล็อกจนกว่าจะจบ |
| run ทั้งหมด | run ทุก .set ที่เลือก × ทุก broker ที่ tick "ใช้" · ข้ามงานที่มีผลแล้ว (ถ้าเปิด "ข้ามที่มีผลแล้ว") |
| ทดสอบ 1 ตัว/broker | run แค่ .set แรกต่อ broker — ใช้ตรวจว่าระบบเดินได้ก่อนปล่อยงานยาว |
| dry-run | ไม่ run จริง · พิมพ์แผนลง card log: กี่งาน · broker ไหน · .set ไหน · ช่วงวันที่ไหน |
| หยุด | หยุดรอบที่ run อยู่ · งานที่ยังไม่จบไม่มีรายงาน |
| เปิด summary → | หน้าสรุปผลทุกรายงาน (โผล่เมื่อมีผลแล้ว) |
แถว "คำสั่งอื่น":
| ปุ่ม | ใช้เมื่อ |
|---|---|
| run ทับของเดิม | อยาก run ซ้ำทั้งที่มีผลอยู่แล้ว |
| run ซ้ำที่ล้มเหลว | run เฉพาะงานที่ล้มเหลวในรอบก่อน (กดได้เมื่อมีงานล้มเหลว) |
| ทำ summary | สร้างหน้าสรุปใหม่จากผลที่มี ไม่ run อะไร |
| compile ที่ค้าง | compile .mq5 ที่ยังไม่มี .ex5 หรือที่ .ex5 เก่ากว่า source |
| compile ใหม่ทั้งหมด | compile ทุก EA ใหม่ |
ใต้ปุ่มมีแถบความคืบหน้า (เสร็จ/ทั้งหมด · ล้มเหลวกี่งาน) และ run ล่าสุด = สรุปรอบก่อน: เสร็จ · ล้มเหลว · ข้าม พร้อมข้อความ error
card "queue งาน"
มีไว้ทำอะไร: ที่ส่งงานจริง · queue run งานทีละงานจนหมด · คุณเพิ่มงานไว้หลายงานแล้วปล่อยให้มันเดินเองได้

card queue งาน ตอนยังไม่มีงาน: ช่อง file config · ปุ่มเพิ่มงานสามปุ่มด้านซ้าย · เริ่ม queue · พัก queue · ล้าง queue ด้านขวา · MT5 ที่ run จริง 0/6 · (queue ว่าง)
★ ตอนกดเพิ่ม ระบบ copy ค่าใน config ทั้งก้อนเก็บไว้กับงานนั้น (ใน bt\queue.json) — แก้ config ทีหลังไม่มีผลกับงานที่รออยู่ ต้องลบงาน (✕) แล้วเพิ่มใหม่ · เรื่องนี้อธิบายละเอียดใน S4
| ส่วน | คืออะไร |
|---|---|
| file config | เลือก file bt\config*.yaml ที่จะใช้ · เลือก file ไหน ทุก card ในหน้านี้แสดงและแก้ file นั้น |
| + เพิ่มงานนี้เข้า queue | เพิ่มงานตามค่าปัจจุบัน (ข้ามงานที่มีผลแล้ว) |
| + เข้า queue (run ทับของเดิม) | เหมือนข้างบน แต่ run ซ้ำแม้มีผลแล้ว |
| + เข้า queue walk-forward | เพิ่มงาน walk-forward ตามค่าใน card walk-forward |
| เริ่ม queue | เริ่มหยิบงานที่สถานะ รอ · คุณกดเอง |
| พัก queue | งานที่ run อยู่ไปจนจบ แล้วไม่หยิบงานถัดไป · กด "เริ่ม queue" เพื่อเดินต่อ |
| ล้าง queue | ลบทุกงานในรายการ |
| MT5 ที่ run จริง n/m | n = MT5 ที่ run อยู่ตอนนี้ · m = ที่ run พร้อมกันได้สูงสุด (คิดจาก CPU และ RAM) |
ตารางงาน: ลำดับ · สถานะ (รอ · กำลัง run · เสร็จ · ล้มเหลว) · ชื่อ config · label (EA · version · กี่ .set × กี่ broker · ช่วงวันที่ · TF) — ตรวจ label ทุกครั้งก่อนกดเริ่ม ช่วงวันที่ผิดเห็นได้ตรงนี้ · ✕ = ลบงานนั้น (งานที่กำลัง run ลบไม่ได้)

queue หลัง lab run จบ: แถว 1 · เสร็จ · config.yaml กับ label LAB_MACROSS ทุก version · 1 .set × 1 broker · 2026-01-01..2026-04-30 H1 · ✕ สีแดงท้ายแถว
ระหว่าง run ถ้า equity curve (เส้นทุน) ใน tester ไหลลงเป็นเส้นเดียวหลายเดือน กด Stop แล้วปิด MT5 ตัวนั้นด้วย — กดแค่ Stop queue จะรอจนครบ run_timeout_sec (S4 หัวข้อ 5)
card "เลือกสิ่งที่จะ run"
มีไว้ทำอะไร: เลือกว่า config นี้จะ run EA ไหน version ไหน .set ไหน · ระบบอ่านรายชื่อจาก folder ที่ set_dir ชี้

card เลือกสิ่งที่จะ run ของ lab: EA LAB_MACROSS (1 .set) · ข้อความ 1 .set (จาก 1) × 0 broker = 0 งาน และ ⚠ แดง "1 ตัวยังไม่มี .ex5" (ภาพถ่ายตอนยังไม่มีบัญชีและยังไม่ compile)
| ส่วน | คืออะไร |
|---|---|
| EA | folder ใน set\ ของ kit ที่มี .set · ตัวเลขในวงเล็บ = จำนวน .set · ★ เลือก EA จากรายการนี้ = ระบบเขียน set_dir ใหม่เป็น set\<ชื่อ> และล้าง only_presets / only_versions ทิ้ง |
| version | tick "ทั้งหมด" = ทุก version · tick เฉพาะบาง version ได้ · ⚠ สีส้มเมื่อมี version ที่ไม่ได้เลือก |
| เลือกทุก file / ล้างการเลือก | tick/เอา tick ออกทุก .set |
| ข้อความ "n .set × m broker = k งาน" | จำนวนงานที่จะเกิด · ⚠ สีแดง = EA ยังไม่มี .ex5 → กด "compile ที่ค้าง" |
EA ที่รับเข้าด้วย intake มี .set อยู่ที่ research\1-screen\set\<ชื่อ>\ ซึ่งไม่อยู่ในรายการ EA นี้ (code อ่านเฉพาะ set\) · ให้ตั้ง set_dir ใน config ด้วย "แก้ YAML ดิบ" แล้วอย่าเปลี่ยนรายการ EA — ตาราง .set ข้างล่างยังแสดงตาม set_dir ที่ตั้งไว้
ตาราง .set: ช่อง tick · version · preset · EA (ชื่อ .ex5 ที่จะใช้ · แดง "⚠ ไม่พบ .ex5" = ยังไม่ได้ compile) · ผลแล้ว (มีรายงานกี่ broker จากกี่ broker)
card "log ล่าสุด"
มีไว้ทำอะไร: ข้อความที่ระบบพิมพ์ระหว่าง run และผลของ dry-run · มีปัญหาให้อ่านที่นี่ก่อน · log เต็มของงานใน queue แต่ละงานอยู่ที่ bt\.queue\item-<เลข>.log

card log ล่าสุด ตอนยังไม่มี log: "ยังไม่มี log — กด run แล้วข้อความจะขึ้นที่นี่"
card "walk-forward"
มีไว้ทำอะไร: run .set เดียวซ้ำหลายช่วงเวลาที่เลื่อนไปเรื่อย ๆ (แต่ละช่วงเรียกว่า test period) แล้วดูว่าผลนิ่งข้ามเวลาไหม · ใช้ในด่าน robustness R1 (เวลา) ซึ่งเป็นด่านหลังผ่านเกณฑ์รอบแรกแล้ว

card walk-forward: เลือก .set · ช่อง ยาว … วัน · เลื่อนทีละ … วัน · ข้อความนับงาน ≈ 19 test period × 0 broker = 0 งาน · ปุ่มสามปุ่มข้างล่าง
| field | คืออะไร |
|---|---|
| .set | .set ที่จะ run (เลือก EA ใน card "เลือกสิ่งที่จะ run" ก่อน) |
| ยาว … วัน | ความยาวของแต่ละ test period (ไม่กรอก = ค่า window_days ซึ่ง default คือ 30) |
| เลื่อนทีละ … วัน | test period ถัดไปเริ่มห่างจากอันก่อนกี่วัน (ไม่กรอก = step_days ซึ่ง default คือ 5) |
| ≈ n test period × m broker = k งาน | จำนวนงานที่จะเกิด คิดจาก "เริ่ม"/"ถึง" ใน card การตั้งค่า |
| ปุ่ม | ทำอะไร |
|---|---|
| run walk-forward | run ทันที (ไม่ผ่าน queue) |
| ดูรายการ test period | พิมพ์รายการช่วงวันที่ลง log โดยไม่ run |
| สร้างรายงานจากผลที่มี | รวมผลที่ run แล้วเป็นตาราง/กราฟ |
ผล walk-forward ลงที่ <backtest_root>\_walk\<EA>\<version>\<broker>\<preset>\ (จาก code bt/walk.py)
card "การตั้งค่า"
มีไว้ทำอะไร: แก้ค่าหลักของ config ที่เลือกอยู่ผ่าน form · แก้แล้วต้องกด บันทึกการตั้งค่า · มีผลกับงานที่เพิ่มเข้า queue หลังจากนี้เท่านั้น

card การตั้งค่า: ปุ่ม บันทึกการตั้งค่า ซ้ายล่าง · link แก้ YAML ดิบ ขวาล่าง · ในภาพ ทุนตั้งต้น = 1000 เพราะถ่ายก่อน kit เปลี่ยนเป็น 10000 (ตารางข้างล่างคือค่าปัจจุบัน)
| field | key ใน YAML | คืออะไร | ค่าใน kit |
|---|---|---|---|
| TF | period |
timeframe ของ chart ที่ tester ใช้ (M1 · M5 · M15 · M30 · H1 · H4 · D1) | H1 |
| model ราคา | model |
real ticks = tick จริง (ใช้ตัวนี้เสมอ) · 1-min OHLC · every tick · open prices คือราคาจำลอง · ★ ช่วงที่ไม่มี tick จริง MT5 สร้างจาก bar M1 ให้เงียบ ๆ แม้เลือก real ticks |
real ticks |
| หน่วงคำสั่ง (ms) | delay |
หน่วงเวลาส่งคำสั่งจำลอง (ping) | 500 |
| เริ่ม | date_from |
วันแรกของช่วงทดสอบ · ห้ามพิมพ์เอง — เอาจาก bt\ea-bt.exe is_oos --year <ปี> --yaml |
2026-01-01 |
| ถึง | date_to |
วันสิ้นสุด · ★ tester หยุดที่ 00:00 ของวันนี้ = วันนี้ไม่ถูก run | 2026-04-30 |
| ทุนตั้งต้น | deposit |
ทุนเริ่มของบัญชีจำลอง · บัญชี cent เป็นหน่วยเซนต์ | 10000 |
| สกุลเงิน | currency |
สกุลของบัญชีจำลอง (USD · USC) |
USD |
| leverage | leverage |
เลขเดียว เช่น 500 = 1:500 |
500 |
| timeout ต่อ run (วิ) | run_timeout_sec |
เกินเวลานี้ระบบปิด MT5 แล้วนับว่าล้มเหลว | 7200 |
| ข้ามที่มีผลแล้ว | skip_existing |
tick = งานที่มีรายงานแล้วและ run ด้วยค่าเดิมจะไม่ run ซ้ำ | tick |
| folder .ex5/.mq5 | ea_dir |
ที่เก็บ source/.ex5 ของ EA |
eas |
| folder ใน MQL5/Experts | ea_subdir |
.ex5 ถูก copy ไปที่ <MT5>\MQL5\Experts\<ค่านี้>\ |
starter-kit |
| ที่เก็บผล | backtest_root |
folder รายงาน · ผลลง <ที่เก็บผล>\<EA>\<version>\<broker>\<preset>.htm |
research/4-backtest/_lab/LAB_MACROSS_IS2026 |
แก้ YAML ดิบ (link ขวาล่างของ card) — กล่องแก้ file config ทั้ง file + ปุ่ม "บันทึก YAML" · ใช้แก้ key ที่ไม่มีใน form เช่น set_dir · only_presets · brokers และเขียนเกณฑ์ผ่าน/ตกในหัว file · ความหมายของทุก key อยู่ใน คู่มือ config
tab สถานะกลยุทธ์
มีไว้ทำอะไร: ตอบคำถามเดียว — "ตอนนี้ EA แต่ละตัวไปถึงขั้นไหนของงานวิจัยแล้ว ผ่านหรือตก และต้องทำอะไรต่อ" · อ่านอย่างเดียว ไม่มีปุ่มสั่งงาน

tab สถานะกลยุทธ์ ของ kit ที่เพิ่งแตก: กล่องขั้น 0–9 + 5R ด้านบน (LAB_MACROSS อยู่ขั้น 3 · prereg) · card "ที่กำลังเดินอยู่" ตรงกลาง · ตาราง "ทั้งหมด" ด้านล่าง
งานวิจัยใน kit แบ่งเป็นขั้น 0–9 (รับ EA เข้า → ตรวจบนกระดาษ → เขียนเกณฑ์ → backtest → ตัดสิน → ด่าน robustness 5R → ...) · รายละเอียดแต่ละขั้นอยู่ที่ research\README.md ใน kit
| ส่วน | อ่านยังไง |
|---|---|
| กล่องขั้น (0 → 9 + 5R) | หนึ่งกล่อง = หนึ่งขั้น · เลขใหญ่ = จำนวน EA ที่ยังเดินอยู่ในขั้นนั้น · กดกล่อง = ตารางล่างกรองเหลือขั้นนั้น |
| แถบสี | เขียว = กำลังทำ/ผ่าน · ส้ม = รอ (รวมรอคุณตัดสินใจ) · แดง = ตก หยุดที่ขั้นนั้น · เทา = ปิด เลิกทำ |
| ที่กำลังเดินอยู่ | การ์ดละ EA: ขั้น · สถานะ · ประโยคสรุป · ขั้นต่อไป · file หลักฐาน |
| ข้อที่ต้องดู | ผิด (แดง) = ข้อมูลขัดกัน ต้องแก้ · เตือน (ส้ม) = ข้ามด่านโดยเขียนเหตุผลไว้ หรือมี EA ที่ยังไม่ลงสถานะ |
| ทั้งหมด | ตารางทุก EA กรองด้วยขั้น · สถานะ · ชื่อ |
ข้อมูลมาจาก research\status.yaml ซึ่งคุณแก้เองเมื่อ EA ผ่านหรือตกด่าน · ตรวจว่าไม่ขัดกัน: bt\ea-bt.exe ea_status --check · หน้านี้ไม่เดาขั้นให้ — EA ที่รับเข้าด้วย intake แต่ยังไม่มีแถวใน status.yaml ได้แถวอัตโนมัติขั้น 0–1 เท่านั้น
tab เครื่องมือวิเคราะห์
มีไว้ทำอะไร: ปุ่มแทนการพิมพ์คำสั่ง bt\ea-bt.exe <เครื่องมือ> สำหรับงานก่อน run และงานอ่านผลหลัง run · run แยกจาก queue backtest จึงกดได้ระหว่างที่ backtest run อยู่
แต่ละเครื่องมือมี: ช่องกรอก (ถ้ามี) · ตัวเลือก (ถ้ามี) · ปุ่ม · ส่วน "ที่มา · วิธีใช้ · วิธีอ่านผล" ที่กางอ่านได้ — อ่านก่อนกดทุกครั้ง · ผลขึ้นใน card "ผล" ใต้กลุ่ม · path ในช่องกรอกเทียบกับ folder kit
เครื่องมือแบ่งเป็นกลุ่ม (ปุ่มกลุ่มแถวบน) · คำสั่งเทียบเท่าแบบพิมพ์และ argument ทั้งหมดอยู่ใน คู่มือคำสั่ง
กลุ่ม "ก่อน run"
ใช้ก่อนส่งงานแรกของ EA ใหม่หรือบัญชีใหม่ · ตอบว่า "ช่วงวันที่ไหน" และ "บัญชีนี้มี tick จริงพอไหม"
| เครื่องมือ | มีไว้ทำอะไร | ช่องกรอก · ปุ่ม |
|---|---|---|
ต้องมีกี่ trade ถึงจะตอบได้ (power) |
บอกว่าต้องมีกี่ trade ถึงจะแยก edge ออกจากความบังเอิญได้ · ถ้า EA ทำ trade ได้น้อยกว่านั้น run ไปก็ตอบไม่ได้ | file รายงาน .htm (ว่าง = ตารางมาตรฐาน) · ปุ่ม คำนวณ |
test period มาตรฐาน IS/OOS (is_oos) |
ให้ date_from/date_to ที่ถูกต้อง · IS (in-sample) = ช่วงที่ใช้คัดเลือก · OOS (out-of-sample) = ช่วงที่เก็บไว้ยืนยัน ห้ามใช้เลือกอะไร |
ปี (ค่าตั้งต้น 2026) · ปุ่ม ขอเป็น YAML · ตาราง |
1 · ดึง tick จาก broker (tick_depth) |
เปิด MT5 ของบัญชีนั้น ดึง tick ย้อนหลังจาก broker แล้วปิดเอง · ตอบว่ามี tick จริงตั้งแต่เดือนที่ถามไหม | folder MT5 เช่น mt5\MT5_RoboForex-Demo · ปุ่ม "IS 2026 · มี tick ตั้งแต่ 2026-01 ไหม" และ "ดึง + ดู tick แรกสุด" · ปิด MT5 ตัวนั้นก่อนกด |
2 · tick ในเครื่องครบถึงปีไหน (tick_years) |
อ่าน tick ที่ดึงลงเครื่องแล้ว บอกว่าแต่ละบัญชีมีถึงปีไหน · ไม่เปิด MT5 | ปุ่ม ทุกบัญชีของฉัน · กด 1 ก่อน ไม่งั้นไม่ขึ้นอะไร |
ผลที่ต้องได้จากปุ่ม 1 คือ ticks yes · ได้ NO — only M1 bars = ช่วงนั้นไม่มี tick จริง ใช้บัญชีนี้กับช่วงนั้นไม่ได้ → เอา tick "ใช้" ออกใน card "MT5 ต่อ broker" · ปุ่ม "ดึง + ดู tick แรกสุด" ให้ค่าที่ยังไม่นิ่งบนบัญชีใหม่ (MT5 ยังดึงไม่จบ) ห้ามใช้ตั้ง date_from
กลุ่ม "อ่านผล / ตัดสินใจ"
ใช้หลัง run จบ · แปลงรายงานของ MT5 เป็นตัวเลขที่ใช้ตัดสินได้จริง

กลุ่ม อ่านผล / ตัดสินใจ: ตารางตัดสินผล (G2/G4) · Monte Carlo · หลายตัวรวมกัน · ผู้ชนะเปลี่ยนตัวข้าม test period · check กติกา prop firm · แต่ละตัวมีช่องกรอก ปุ่ม และ "ที่มา · วิธีใช้ · วิธีอ่านผล" ให้กาง
คำที่ต้องรู้ก่อน: R = กำไรหรือขาดทุนของหนึ่ง trade หารด้วยจำนวนที่เสี่ยงไว้ตอนเข้า (ขาดทุนเต็ม SL = −1R) · E[R] = R เฉลี่ยต่อ trade · CI (confidence interval) = ช่วงที่ค่าจริงน่าจะอยู่ · DD (drawdown) = ทุนร่วงจากจุดสูงสุดลงมากี่ % · Monte Carlo / shuffle = สลับลำดับ trade หลายพันครั้งเพื่อดูว่า DD แย่ได้แค่ไหน · DD p95 = DD ที่แย่กว่า 95% ของลำดับที่สุ่ม · t (t-stat) = ขนาด edge เทียบกับความแกว่ง ยิ่งสูงยิ่งไม่ใช่ความบังเอิญ · PF (profit factor) = กำไรรวม ÷ ขาดทุนรวม · G2 / G4 = ชื่อด่านในตาราง verdict: G2 = win% ต้องเกิน win% ขั้นต่ำที่คำนวณให้ (need%) · G4 = t ต้องถึงเส้นตัดสิน
| เครื่องมือ | มีไว้ทำอะไร | ช่องกรอก · ปุ่ม · อ่านผล |
|---|---|---|
ตารางตัดสินผล G2/G4 (verdict) |
คำนวณ edge · R · t-stat ของทุกรายงานใน folder — ตัวเลขที่ MT5 ไม่มีให้ | folder ของ broker หนึ่งตัว (ตัวที่มี .htm ข้างใน) ไม่ใช่ folder version · ปุ่มเรียงตาม edge · R · t · กำไรสุทธิ (เปลี่ยนแค่ลำดับแถว) · t ≥ 2.0 คือเส้นตัดสินเมื่อทดสอบ preset เดียว เส้นขยับขึ้นตามจำนวน preset ที่ลอง |
Monte Carlo (mc) |
E[R] พร้อม CI และ DD จาก shuffle | file รายงาน (ใส่ * ได้) · รอบสุ่ม 500/2000/10000 · ปุ่ม ทีละ trade · รายวัน · แยกราย broker · ดู DD p95 ไม่ใช่ DD ในรายงาน |
หลายตัวรวมกันกระจายความเสี่ยงจริงไหม (corr) |
ถ้า run หลาย EA พร้อมกัน วันแย่ของแต่ละตัวมาพร้อมกันไหม | รายงานตั้งแต่ 2 ใบ · ปุ่ม เทียบ · correlation ใกล้ 1 = ไม่ได้กระจาย |
ผู้ชนะเปลี่ยนตัวข้าม test period ไหม (stability) |
อ่านผล walk-forward ว่า preset ที่ดีสุดยังดีสุดทุกช่วงไหม | folder broker ใน <backtest_root>\_walk\<EA>\<version>\ · วัดด้วย กำไร / mean / PF · ต้องมีผล walk-forward หลาย preset ก่อน |
check กติกา prop firm (prop) |
ตรวจรายงานกับกติกาที่ prop firm (บริษัทที่ให้ทุน trade) ใช้ตัดสิทธิ์บ่อย: วันแย่สุด% · ช่วงไม่มี trade ยาวสุด | folder version · ทุน (ต้องตรงกับทุนที่ run จริง) · ใช้ใน Advanced |
กลุ่ม "ด่าน robustness (5R)"
ใช้หลัง EA ผ่านเกณฑ์รอบแรกแล้วเท่านั้น · robustness = ผลยังอยู่ไหมเมื่อเปลี่ยนเงื่อนไข (R1 เวลา · R2 broker · R3 ต้นทุน · R4 การส่งคำสั่ง · R5 parameter · R6 ข้อมูลรบกวน) · เกณฑ์อยู่ที่ research\5-verdict\robustness.md

กลุ่ม ด่าน robustness (5R): เครื่องมือ R5 ตัวเดียว · ช่องกรอก path แล้วปุ่ม 1 · 2 · 3 ตามลำดับ
| เครื่องมือ | มีไว้ทำอะไร | ช่องกรอก · ปุ่ม |
|---|---|---|
R5 · preset ที่ชนะเป็น plateau หรือยอดแหลม (sensitivity) |
ขยับ input ตัวเลขทีละตัว ±10% แล้วดูว่าผลยังดีอยู่ไหม · ผลดีเฉพาะจุดเดียว (ยอดแหลม) = น่าจะ overfit คือค่าถูกปรับจนเข้ากับข้อมูลที่ test พอดี แต่ใช้กับข้อมูลใหม่ไม่ได้ | ปุ่ม 1–2: file .set ฐาน · ปุ่ม 3: folder ผลของ broker · ปุ่ม 1 · ดู input ที่จะขยับ · 2 · สร้าง .set เพื่อนบ้าน · 3 · อ่านผล |
ปุ่ม 2 พิมพ์บรรทัด only_presets ให้วางใน config แล้วไป run ใน tab ระบบ backtest · R1 ใช้ card walk-forward + stability · R2 = เพิ่มบัญชี demo คนละ broker แล้ว run ซ้ำ
กลุ่ม "ก่อน run — คัดสินค้า/ตรวจข้อมูล"
ตรวจ spec ของสัญลักษณ์และสูตรคิด lot ก่อนเชื่อผล

สองเครื่องมือของกลุ่มนี้ที่ใช้ใน Standard: symbol ใน terminal พร้อม backtest ไหม (ช่อง path ของ terminal ต้องใส่) และ lot จาก risk% → risk% ที่เกิดจริง
| เครื่องมือ | มีไว้ทำอะไร | ใช้ใน |
|---|---|---|
symbol ใน terminal พร้อม backtest ไหม (symcheck) |
อ่าน spec ของสัญลักษณ์จาก MT5 จริง: contract size (ขนาดสัญญาต่อ 1 lot · ทองมี 1 / 10 / 100 แล้วแต่ broker) · tick value · digits · ช่วงข้อมูล · ช่อง path ของ terminal ต้องใส่ เช่น mt5\MT5_RoboForex-Demo |
Standard |
lot จาก risk% → risk% ที่เกิดจริง (lotcheck) |
ตรวจว่าสูตรคิด lot จาก risk% ให้ความเสี่ยงจริงเท่าที่ตั้งไหม · ปุ่ม "case จริง 22.7 lot / 136%" แสดงตัวอย่างที่พลาด · ค่าของบัญชีตัวเองต้องพิมพ์คำสั่ง (ดู คู่มือคำสั่ง) | Standard |
ทองอยู่ mode ไหนตอนนี้ (regime) |
วัดว่าตลาดทองช่วงนี้วิ่งมากหรือน้อย (V = median ระยะวิ่งรายวัน 20 วัน) · ต้องเปิด MT5 ไว้ · criteria ตั้งต้นเป็นของ EA ผู้สอน | Advanced |
spec สินค้า × broker + gate G1 (passport) |
ตาราง spec และต้นทุนของสินค้าข้าม broker · G1 = ด่านต้นทุน | Advanced |
tick cache ครบถึงเดือนไหน (tick) |
ดูว่าแต่ละ broker มี tick ถึงเดือนไหน และ build ของ MT5 ตามหลังไหม | Advanced |
.set ที่ scale ตาม V (vsets) |
สร้าง .set ที่ปรับระยะตามความผันผวนของสินค้า · สร้างจาก EA ของผู้สอน |
ต้องใช้ข้อมูลที่ kit ไม่มี |
กลุ่ม "ระบบ / ข้อมูล"
| เครื่องมือ | มีไว้ทำอะไร | ปุ่ม |
|---|---|---|
เก็บ file M1 จาก Common\Files (collect) |
ย้าย file ราคา M1 ที่ EA บางตัวเขียนไว้ ไปที่ research/0-intake/sources/goldprice · Standard ไม่ได้ใช้ |
ลองก่อน (dry-run) · ทำจริง |
| selftest ของเครื่องมือวิเคราะห์ | ตรวจว่าเครื่องมือแต่ละตัวยังคำนวณถูก | ปุ่มละเครื่องมือ · ใช้หลังเปลี่ยน kit version หรือเมื่อผลแปลกจนไม่แน่ใจ |

กลุ่ม ระบบ / ข้อมูล: เก็บ file M1 (ลองก่อน · ทำจริง) และแถวปุ่ม selftest ปุ่มละเครื่องมือ
tab skill
มีไว้ทำอะไร: รายชื่อ skill ของ Claude Code ที่มากับ kit (ตอนนี้: ea-analyze) พร้อมคำอธิบาย · ไม่ใช่ปุ่ม — ใช้ด้วยการเปิด Claude Code ใน folder kit แล้วพิมพ์ เช่น /ea-analyze research/1-screen/eas/<ชื่อ> · Standard ไม่ต้องใช้ Claude Code

tab skill: ไม่มีปุ่มสั่งงาน มีแต่คำอธิบาย skill /ea-analyze และ link "อ่าน SKILL.md เต็ม ๆ"
ลำดับใช้ dashboard สำหรับ backtest งานแรก
ขั้นตอนเต็มพร้อม "ได้อะไร" และ "ถ้าไม่ได้" ของทุกขั้นอยู่ใน ทดสอบ EA ของตัวเอง และ S4-LAB · ย่อเป็นลำดับปุ่ม:
- tab ระบบ backtest → เพิ่มบัญชี demo → ตรวจแผน → เพิ่มบัญชี
- tab เครื่องมือวิเคราะห์ → ก่อน run → 1 · ดึง tick จาก broker → 2 · tick ในเครื่อง · บัญชีที่ไม่ได้
ticks yes→ เอา tick "ใช้" ออก → บันทึก broker - card การตั้งค่า: เริ่ม/ถึง ตรงกับ
is_oos· model = real ticks - แก้ YAML ดิบ: เขียนเกณฑ์ผ่าน/ตกในหัว file ก่อน run
- card เลือกสิ่งที่จะ run: ไม่มี ⚠ แดง (ถ้ามี → compile ที่ค้าง)
- card สั่ง run → dry-run → อ่านแผนใน card log ล่าสุด
- card queue → + เพิ่มงานนี้เข้า queue → ตรวจ label → เริ่ม queue (คุณกดเอง)
- run จบ: tab เครื่องมือวิเคราะห์ → Monte Carlo / ตารางตัดสินผล
ข้อจำกัดของ dashboard
- บางคำสั่งยังไม่มีปุ่ม:
lot_checkด้วยค่าบัญชีตัวเอง ·sensitivityแบบขยับ % อื่น ·is_oos --check— ใช้ PowerShell (คู่มือคำสั่ง) - ระหว่างเครื่องมือทำงาน card ผลจะรอจนจบ ไม่มีแถบความคืบหน้า
- "ทุนตั้งต้น" ใน form ไม่ได้ตรวจว่าตรงกับสกุลเงิน — บัญชี cent ต้องคูณ 100 เอง
- ปุ่ม
tick(tick cache) เรียกเครื่องมือโดยไม่ระบุ config ซึ่งค่าตั้งต้นคือbt/config_warm_ticks.yamlที่ไม่มีใน kit · พิมพ์คำสั่งbt\ea-bt.exe tick_coverageแล้วใส่--configเอง (ยังไม่ได้ตรวจว่าใช้กับ config ของ kit ได้ครบ) - คำอธิบายในหน้านี้ตรงกับ dashboard ที่ตรวจจาก code วันที่ 2026-11-03 · ถ้าหน้าจอจริงต่างไป ให้เชื่อหน้าจอจริง · คู่มือฉบับใน kit อยู่ที่
docs\dashboard-guide.md
ดูต่อ
- ภาพรวมระบบ backtest — เริ่มที่นี่ถ้ายังไม่รู้จักระบบ
- ติดตั้ง kit และเพิ่มบัญชี demo
- ทดสอบ EA ของตัวเอง
- คู่มือ config · คู่มือคำสั่ง ea-bt.exe
- ปัญหาที่พบบ่อย
- S4 · run งานผ่าน dashboard และ queue · S4-LAB · S5 · อ่านรายงาน