ข้ามไปที่เนื้อหา

คู่มือ 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 — กดปุ่มกับพิมพ์คำสั่งได้ผลเหมือนกัน (คู่มือคำสั่ง)

  1. double-click 2-เปิดหน้าคุม.bat ใน folder kit → หน้าต่างดำเปิดค้าง · ห้ามปิดระหว่างใช้ ปิดแล้ว dashboard ดับ
  2. browser เปิด http://127.0.0.1:8770 เอง · ถ้าไม่เปิด พิมพ์ที่อยู่นี้ใน browser เอง
  3. หน้าจอ 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

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

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 งาน ตอนว่าง

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 ที่มีงานหนึ่งแถว

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

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 ล่าสุด

card log ล่าสุด ตอนยังไม่มี log: "ยังไม่มี log — กด run แล้วข้อความจะขึ้นที่นี่"

card "walk-forward"

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

card walk-forward

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 การตั้งค่า

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 สถานะกลยุทธ์

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

กลุ่ม ด่าน 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 ก่อนเชื่อผล

symcheck และ lotcheck

สองเครื่องมือของกลุ่มนี้ที่ใช้ใน 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

tab skill: ไม่มีปุ่มสั่งงาน มีแต่คำอธิบาย skill /ea-analyze และ link "อ่าน SKILL.md เต็ม ๆ"


ลำดับใช้ dashboard สำหรับ backtest งานแรก

ขั้นตอนเต็มพร้อม "ได้อะไร" และ "ถ้าไม่ได้" ของทุกขั้นอยู่ใน ทดสอบ EA ของตัวเอง และ S4-LAB · ย่อเป็นลำดับปุ่ม:

  1. tab ระบบ backtest → เพิ่มบัญชี demo → ตรวจแผน → เพิ่มบัญชี
  2. tab เครื่องมือวิเคราะห์ → ก่อน run → 1 · ดึง tick จาก broker → 2 · tick ในเครื่อง · บัญชีที่ไม่ได้ ticks yes → เอา tick "ใช้" ออก → บันทึก broker
  3. card การตั้งค่า: เริ่ม/ถึง ตรงกับ is_oos · model = real ticks
  4. แก้ YAML ดิบ: เขียนเกณฑ์ผ่าน/ตกในหัว file ก่อน run
  5. card เลือกสิ่งที่จะ run: ไม่มี ⚠ แดง (ถ้ามี → compile ที่ค้าง)
  6. card สั่ง run → dry-run → อ่านแผนใน card log ล่าสุด
  7. card queue → + เพิ่มงานนี้เข้า queue → ตรวจ label → เริ่ม queue (คุณกดเอง)
  8. 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

ดูต่อ