Knowledge Hub

Ladder Dragon: บอทเทรด Spot ที่ออกแบบให้หยุดเมื่อไม่แน่ใจ

แยกกลไกของบอท Binance Spot แบบ fail-closed: entry ladder, protection OCO, journal กับ recovery, FIFO accounting, AI ที่เป็น advisory และ statistical gate พร้อมข้อจำกัดที่โปรเจกต์ยอมรับเอง

Tradingอ่าน 21 นาทีเผยแพร่ 14 ตุลาคม 2569

แก่นของเรื่อง

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

ทำไมแนวคิดนี้ได้ผล (กลไกเหตุและผล)

  1. บอทเทรดพังบ่อยที่สถานะกลางทาง เช่น ซื้อได้แล้วแต่โปรเซสดับก่อนตั้งตัวป้องกัน ระบบจึงเขียน intent ลง journal ก่อนส่งคำสั่ง และเทียบกับ Binance ทุกครั้งที่ฟื้น
  2. ถ้าอ่านสถานะไม่ได้หรือผลคำสั่งไม่ชัด ระบบเลือกหยุด (HALT) แทนเดา การหยุดมีต้นทุนต่ำกว่าการเปิด position ที่ไม่มีตัวป้องกัน
  3. ตัวเลขกำไรขาดทุนมาจากการจับคู่ lot แบบ FIFO ด้วยจำนวน ราคา และค่าธรรมเนียมจริง ถ้าข้อมูลไม่ครบก็ไม่รายงานตัวเลข จึงไม่มีกำไรลวงตา
  4. AI และกลยุทธ์ใหม่เริ่มใน SHADOW (เก็บหลักฐาน ไม่แตะคำสั่ง) และเข้า APPLY ได้ต่อเมื่อผ่านเกณฑ์สถิติบนข้อมูลที่เก็บหลังจากแช่แข็ง candidate แล้ว

20% ที่สำคัญที่สุดในทางปฏิบัติ

ลำดับ หลักที่ควรเอาไปใช้ ทำไมสำคัญ
1 ทุก BUY ที่ fill ต้องมีตัวป้องกันฝั่งตลาดที่ตรวจแล้ว กันสถานะเปิดที่ไม่มีทางออก
2 บันทึก intent ก่อนส่งคำสั่ง ฟื้นหลังโปรเซสดับได้โดยไม่เดา
3 ไม่ชัดเจน = หยุด ไม่ใช่ลองต่อ ผลคำสั่งที่ไม่ทราบต้องผ่าน reconcile หรือ HALT
4 AI ไม่มีเครื่องมือสั่งซื้อขาย อำนาจสูงสุดอยู่ที่ Risk Manager
5 ของใหม่เริ่มใน SHADOW แล้วค่อยพิสูจน์ ไม่ปล่อยกลยุทธ์ที่ยังไม่ผ่านการทดสอบเข้าเงินจริง

สิ่งที่รอได้: dashboard, Telegram report, การ deploy บน Raspberry Pi ซึ่งเป็นงานปฏิบัติการรอบตัวระบบ ไม่ใช่แกนของแนวคิด

ช่วยให้ดีขึ้นอย่างไร

โปรเจกต์ไม่ประกาศตัวเลขกำไร และระบุเองว่าไม่รับรองผลกำไร ตารางนี้จึงเทียบ "ความเสี่ยงที่ถูกควบคุม" ไม่ใช่ผลตอบแทน

สถานการณ์ ถ้าไม่มี เมื่อมี วัดอย่างไร หลักฐาน
BUY fill แล้วมีตัวป้องกัน สถานะเปิดไม่มีทางออก OCO หรือ STOP ที่ตรวจแล้ว canary 1 รอบ วัดแล้ว (1 lifecycle)
โปรเซสดับกลางคำสั่ง ไม่รู้ว่าคำสั่งไปถึงหรือยัง journal แล้ว reconcile ทดสอบฟื้นหลัง restart ยังไม่ทดสอบ
รายงานกำไร cash flow ปนกับกำไร แยก cash flow, พอร์ต, FIFO PnL ตัวเลขสามชุดไม่ปนกัน ตีความ
backtest ใช้ข้อมูลอนาคต ผลสูงเกินจริง replay ตามเวลา, purged split ตรวจ cutoff ใน test ตีความ
AI ทำเกินอำนาจ AI ปิด HALT ได้ AI ไม่มี order tool ตรวจ call ที่ AI เรียกได้ ตีความ
กำไรสุทธิของกลยุทธ์ ไม่ทราบ ไม่มีตัวเลขที่เผยแพร่ ต้องรันเอง ยังไม่ทดสอบ

ข้อแลกเปลี่ยนที่ต้องยอมรับ: เกณฑ์เข้มทำให้ช้า เช่น เฟสละ 45 วัน และต้องมี 56 decision ใหม่ก่อนยืนยัน (ตีความ: ค่าใช้จ่ายคือเวลาและโอกาสที่เสียไปตอนรอ)

Important canary ที่ผ่านพิสูจน์ได้เพียงวงจร BUY ถึง protection หนึ่งรอบ ไม่ได้พิสูจน์ว่ากลยุทธ์ทำกำไร และโปรเจกต์ระบุว่าผลนี้ไม่อนุญาตให้เพิ่ม exposure

ลองใช้

ตัวอย่างที่ 1: FIFO กับค่าธรรมเนียม (ตัวอย่างประกอบ)

ซื้อ 1 หน่วยที่ 100 แล้วซื้ออีก 1 หน่วยที่ 110 จากนั้นขาย 1.5 หน่วยที่ 120 ค่าธรรมเนียมรวม 0.18

ขั้น คำนวณ ผล
ต้นทุน FIFO 1 x 100 + 0.5 x 110 155.00
รายรับจากขาย 1.5 x 120 180.00
กำไรก่อนค่าธรรมเนียม 180 - 155 25.00
กำไรสุทธิ 25 - 0.18 24.82
lot คงเหลือ 0.5 หน่วยที่ 110 ถือต่อ

รายงานของระบบใส่ค่าธรรมเนียมเป็นเครื่องหมายลบเพราะลดกำไรสุทธิ ถ้าไม่ทราบค่าธรรมเนียม ระบบไม่ใส่ศูนย์แทน

ตัวอย่างที่ 2: เกณฑ์ 6 จาก 7 block ผ่านง่ายแค่ไหน (ตัวอย่างประกอบ)

Confirmation แบ่ง decision เป็น 7 block block ละ 8 รวม 56 และต้องบวกอย่างน้อย 6 block สมมติ (ข้อสมมติของเรา ไม่ใช่ของโปรเจกต์) ว่าแต่ละ block บวกหรือลบด้วยโอกาสเท่ากัน:

จำนวน block ที่บวก วิธีเกิดขึ้น ความน่าจะเป็น
7 1 วิธี 1/128
6 7 วิธี 7/128
รวมอย่างน้อย 6 8 วิธี 8/128 = 6.25%

เกณฑ์นี้เพียงอย่างเดียวจึงผ่านโดยบังเอิญได้ราว 1 ใน 16 นี่คือเหตุผลที่ต้องมีเกณฑ์ lower confidence bound และ Holm correction ซ้อนอีกชั้น

ตัวอย่างที่ 3: Holm correction (ตัวอย่างประกอบ)

ทดสอบ 3 สมมติฐาน ระดับนัยสำคัญ 0.05 เรียง p-value จากน้อยไปมาก เทียบกับ 0.05 หารด้วยจำนวนที่เหลือ

อันดับ p-value เกณฑ์ ผล
1 0.010 0.05/3 = 0.0167 ผ่าน
2 0.030 0.05/2 = 0.025 ไม่ผ่าน หยุดตรงนี้
3 0.040 ไม่ถูกทดสอบ ไม่ผ่าน

ถ้าไม่แก้ จะผ่านทั้งสามตัวเพราะทุกตัวต่ำกว่า 0.05 ซึ่งคือปัญหา multiple comparison ที่ Holm แก้

เมื่อไรควรใช้ ไม่ควรใช้

เงื่อนไข ใช้แนวคิดนี้ ไม่ควรใช้
ส่งคำสั่งจริงบน exchange ใช้ครบทุกชั้น ไม่มีกรณีที่ข้ามได้
บอทส่วนตัวเล็ก ๆ ใช้ journal และ protection gate 56 decision อาจเกินจำเป็น
ต้องการกำไรทันที ไม่เหมาะ ระบบเน้นความปลอดภัย ไม่รับรองกำไร
ต้องรันบน Windows ตรง ๆ ใช้ WSL2 สำหรับพัฒนา LIVE บน Windows ตรงไม่รองรับ
ไม่มี Linux ที่เปิดตลอด รัน DRY หรือ Testnet ใช้ LIVE ไม่ได้

ก้าวแรกที่เล็กที่สุด

รัน DRY กับ Binance Spot Testnet ด้วย BOT_LIVE_CONFIRMED=NO และ AI ปิด (AI_ADVISOR_ENABLE=0) แล้วดู dashboard ว่ามี order, protection และสถานะ HALT ครบหรือไม่ ยังไม่ต้องใส่คีย์ Mainnet

ทดสอบก่อนและหลัง

ขั้น ทำอะไร เกณฑ์ผ่าน (ตั้งก่อนรัน)
ฐาน นับ BUY ที่ fill แล้วไม่มีตัวป้องกันบนบอทเดิมของคุณ บันทึกจำนวน N0
ทำ เพิ่มขั้นตรวจ protection แล้วรัน Testnet จำนวนรอบเท่ากัน N1 = 0
ฟื้น kill โปรเซสหลัง fill แล้ว restart ไม่มี order ซ้ำ ไม่มี fill ที่ไม่มี protection
บัญชี เทียบกำไรจาก FIFO กับยอดบัญชี ตัวเลขอธิบายส่วนต่างได้ครบ

ทดสอบความเข้าใจ

คำถาม คำตอบ คำตอบที่มักผิด
ผู้ให้บริการ AI ล่ม ขณะมี position บอททำอย่างไร ใช้กลยุทธ์ deterministic ต่อ protection ไม่เปลี่ยน บอทหยุดเทรดทันที
canary ผ่าน 1 รอบ พร้อม LIVE เต็มหรือยัง ยัง พิสูจน์แค่วงจร BUY ถึง protection รอบเดียว พร้อมแล้ว เพราะผ่านเงินจริง
ผ่าน 6 จาก 7 block เพียงพอไหม ไม่ ผ่านโดยสุ่มได้ 6.25% ต้องมี CI และ Holm น้อยมาก ไม่ต้องตรวจเพิ่ม
ค่าธรรมเนียมไม่ทราบ ใส่ 0 แล้วรายงานต่อได้ไหม ไม่ ระบบกันตัวเลข PnL และตัดสัญลักษณ์ออกจากรายงาน ใส่ 0 ได้ ผลต่างเล็กน้อย
exit code 2 จาก verification แปลว่าอะไร BLOCKED คือหลักฐานไม่ครบ ไม่ใช่ PASS ผ่านแบบมีคำเตือน
candidate ที่ชนะตอน selection ใช้ยืนยันตัวเองได้ไหม ไม่ ต้อง freeze แล้วเก็บ 56 decision ใหม่ ชนะ selection ก็ยืนยันได้เลย

กรอบความรู้: ข้อเท็จจริงเทียบกับข้อสรุป

คำอธิบายในหน้านี้อิงเอกสารของโปรเจกต์ ไม่ได้อ่านซอร์สโค้ดหรือรันระบบเอง จึงแยกระดับความมั่นใจดังนี้

ประเภท ตัวอย่าง วิธีใช้
ข้อเท็จจริงที่เอกสารระบุ ค่า 56 decision, 360 นาที, 08:00 Almaty อ้างได้
คำประกาศของระบบ "fail-closed", "ไม่เดา" ถือเป็นเจตนาออกแบบ ยังไม่ตรวจเอง
ข้อสรุปของเรา FIFO ลดกำไรลวงตา ตีความ ต้องทดสอบ
สิ่งที่ไม่มีข้อมูล สูตรระยะห่าง ladder ดูหัวข้อข้อมูลที่ขาด
ข้อยอมรับของโปรเจกต์ experimental, ไม่รับรองกำไร น้ำหนักสูงสุด

ภาพรวมระบบ

Ladder Dragon เป็นระบบ Python แบบโอเพนซอร์ส (MIT) สำหรับ Binance Spot เวอร์ชัน 2.20.352 ณ วันที่ตรวจ 2026-10-10 และสถานะที่ประกาศคือ experimental

เจ็ดชั้นของระบบ

ชั้น หน้าที่
Strategy BUY/SELL ladder, ATR/EMA/VWAP/ADX, market regime
Execution Binance transport, fill, OCO/STOP, FIFO, recovery
Risk reserve, CAP, circuit breaker, reconcile, fail-closed gate
AI advisory SHADOW และ RAG context ไม่มีสิทธิ์สั่งคำสั่ง
Operations dashboard อ่านอย่างเดียว, Telegram, release, backup
Persistence migration แบบ atomic, journal, หลักฐานที่ hash ต้นทาง
Verification replay, walk-forward, recovery, Testnet, release, Pi

ความเสี่ยงที่ระบบตั้งใจควบคุม

ความเสี่ยง ตัวควบคุม
โปรเซสหยุดหลัง fill intent journal และ reconcile กับ Binance
BUY ไม่มี protection OCO หรือ STOP ที่ตรวจแล้ว และ recovery แบบ fail-closed
cash flow ถูกมองเป็นกำไร แยก cash flow, การเคลื่อนไหวของพอร์ต, FIFO net PnL
ทดสอบด้วยข้อมูลอนาคต replay ตามลำดับเวลา, walk-forward แบบ purged
AI เกินอำนาจ AI เป็น advisory อยู่หลัง Risk Manager
โฮสต์เล็กล้มเงียบ dashboard, health check, backup, Telegram

กลไกหลัก

1. Entry ladder แบบปรับตัว

Ladder คือชุดคำสั่งซื้อที่วางเป็นขั้นราคาต่างกัน (คำนิยามทั่วไป ไม่ใช่สูตรของโปรเจกต์) ระบบปรับขั้นด้วยตัวชี้วัด ATR, EMA, VWAP, ADX และ market regime สูตรระยะห่างที่แน่ชัดไม่ได้อยู่ในเอกสารที่อ่าน

ตัวชี้วัด ใช้ตอบคำถามอะไร (ทั่วไป)
ATR ราคาแกว่งกว้างแค่ไหน
EMA แนวโน้มระยะสั้นไปทางไหน
VWAP ราคาเฉลี่ยถ่วงปริมาณ ตอนนี้แพงหรือถูก
ADX แนวโน้มแรงพอหรือไม่

2. Protection ฝั่ง exchange

BUY ที่ fill แล้วถือว่าปลอดภัยเมื่อตรวจ OCO ทั้งสองขาแล้วเท่านั้น กฎที่เอกสารระบุ:

  • OCO ที่ราคาไขว้กันไม่ถูกส่ง
  • ถ้าติดตั้ง protection ไม่สำเร็จแบบชัดเจนใน LIVE ระบบพยายามปิด position ฉุกเฉินแบบที่ยืนยันได้
  • ความไม่แน่ใจจากการอ่านสถานะไม่อนุญาตให้ถอด protection
  • inventory ที่บอทจัดการกับ inventory เดิมของบัญชีแยกกัน และ protection ของฝั่งแรกไม่ครอบคลุมฝั่งหลัง

3. Journal และ recovery

Executor บันทึก intent ก่อนส่ง mutation ไปที่ exchange ผลที่ไม่ทราบเข้าสู่ reconcile หรือ HALT HALT บล็อกทุก mutation แต่ระบบที่สถานะดียังเก็บหลักฐาน SHADOW แบบไม่สั่งคำสั่งต่อได้

4. Accounting แบบ FIFO

กฎ ผล
ใช้จำนวน ราคา ค่าธรรมเนียม และ trade id จริง ตัวเลขตรวจสอบย้อนกลับได้
ค่าธรรมเนียมไม่ทราบ ไม่กลายเป็นศูนย์ ไม่สร้างกำไรเกินจริง
ประวัติ FIFO ไม่ครบ ไม่แสดง PnL ตัวเลข symbol ถูกแยกในรายการยกเว้น
cash flow, พอร์ต, PnL เป็นสามเมตริกแยก ไม่ปนกัน

5. Risk Manager

ควบคุม reserve, CAP, ขาดทุนรายวัน, spread, ความสดของข้อมูล และ gap risk จากจุดเดียว ส่วน ladder_dragon/risk/ ยังมี circuit breaker, VaR และ Expected Shortfall

6. AI และ prediction

AI ได้รับ aggregate ที่ตรวจแล้ว ไม่มีเครื่องมือสั่งคำสั่ง และกลับไปใช้กลยุทธ์ deterministic เมื่อผลลัพธ์ไม่ถูกต้องหรือผู้ให้บริการผิดพลาด

รายการ ค่าที่เอกสารระบุ
horizon ที่บันทึก 1, 5, 15 นาที
ค่าที่เก็บ probability, expected net PnL, adverse movement, เวลา execute
รายงานปฏิบัติการ decision ล่าสุด 1,000 รายการต่อ candidate
ฐานข้อมูล เก็บ decision และ outcome ทั้งหมด
ความปลอดภัยข้อมูล feature ใช้ as-of cutoff, split ตัด label ที่ยังไม่รู้

7. กระบวนการยืนยันทางสถิติ

flowchart TD
    A[Selection: เทียบ candidate บน snapshot เดียวกัน] --> B[Operator freeze 1 candidate]
    B --> C[manifest JSON + SHA-256]
    C --> D[Confirmation: 56 decision ใหม่ 7 block x 8]
    D --> E{ผ่านเกณฑ์ block และ CI + Holm}
    E -->|ผ่าน| F[Operator อนุมัติ APPLY]
    E -->|ไม่ผ่าน| G[คงอยู่ใน SHADOW]

การเรียงลำดับในแผนภาพเป็นการต่อภาพของเรา เอกสารระบุกฎแต่ละข้อแยกกัน

กฎ ค่า
ผล selection เป็น diagnostic ยืนยัน candidate ของตัวเองไม่ได้
ข้อมูล confirmation หลัง purged boundary เท่านั้น
ตัดช่วง outcome ที่ทับซ้อน 360 นาที
โครงสร้าง cohort 7 block ๆ ละ 8 decision รวม 56
ต้องบวก อย่างน้อย 6 block ทั้ง PnL และ baseline edge
exact power analysis ต้องมี 52 decision อิสระใน selection
ก่อนฝึก decision ปิดย้อนหลังนับเข้า 30 decision ได้
กำหนดเวลา ล่วงหน้า 45 วันต่อเฟส
decision ที่ยังไม่ปิด หยุดชุดที่เข้าเกณฑ์จนกว่า outcome จะปิด

กลยุทธ์ที่เทียบกับ baseline NO_TRADE/USDT นับต้นทุนโอกาสของช่วงที่ไม่เทรดด้วย และ cohort ที่เข้าเทรดจริงเป็นเพียง diagnostic อนุมัติ APPLY ไม่ได้ PANIC มี safety veto แยก ไม่ทดสอบ expectancy

8. Defensive ensemble

สัญญาณ ผล
FLAT หรือ UP ถือเป็นครอบครัวปลอดภัยเดียวกัน
DOWN หรือ PANIC แบบมั่นใจ หยุด BUY
หลักฐานอันตรายอ่อน ลด CAP ได้อย่างเดียว
ทุกกรณี ขยายความเสี่ยงของ baseline ไม่ได้

ระดับการปล่อยใช้งาน

ระดับ พฤติกรรม เงื่อนไข
DRY จำลอง ไม่ส่งคำสั่ง ค่าเริ่มต้น
Testnet คำสั่งบน Binance Spot Testnet ใช้คีย์ Testnet
SHADOW เก็บหลักฐาน ไม่เปลี่ยนคำสั่ง ใช้กับ AI และกฎใหม่
Canary Mainnet จำกัด 10 USDT ต้องยืนยัน LIVE ครบ
APPLY ฟีเจอร์ใหม่เปลี่ยนคำสั่งจริงได้ operator อนุมัติ และหลักฐานผ่าน
LIVE Mainnet เต็ม Testnet evidence, limit ที่ตรวจแล้ว, protection ตรวจแล้ว

ตัวเลข canary: notional สูงสุด 10 USDT ตัวอย่างคำสั่งใช้ 6 USDT และค่าธรรมเนียมสูงสุด 0.02 USDT คิดเป็น 0.02/6 = 0.33% ของ notional

สถาปัตยกรรมโค้ด

bin / FastAPI routes
        |
application services (supervision, verification)
        |
domain services (strategy, risk, AI policies)
        |
infrastructure adapters (execution, SQLite, Binance)
Path หน้าที่
ladder_dragon/strategy/ ladder, indicator, prediction, simulation, replay
ladder_dragon/risk/ circuit breaker, limit, CAP, VaR
ladder_dragon/execution/ transport, order, protection, fill, recovery, accounting
ladder_dragon/ai/ AI advice, context, RAG, evidence
ladder_dragon/persistence/ connection และ migration
ladder_dragon/dashboard/ API และ telemetry
ladder_dragon/verification/ ชุดตรวจ local, release, Testnet, Pi
bin/ launcher บรรทัดคำสั่งเท่านั้น

กฎการพึ่งพา: โค้ดใน package ห้าม import bin ส่วนโมดูล prediction ห้าม import ความสามารถสั่งคำสั่งของ exchange

เกณฑ์ที่บังคับด้วย harness

เกณฑ์ ค่า
โมดูลใหม่ เกิน 500 บรรทัด = ไม่ผ่าน
ฟังก์ชันใหม่ เกิน 120 บรรทัด = ไม่ผ่าน, 80 ถึง 120 = เตือน
โมดูลเดิม ห้ามโตเกินขนาดรุ่นก่อน (ถ้าเกิน 500)
cycle ของ import ห้ามเพิ่ม cycle ใหม่เทียบรุ่นก่อน
ownership ทุกไฟล์ Python ต้องมีเจ้าของใน contract

ติดตั้งและตรวจสอบ

python3 -m venv .venv
source .venv/bin/activate
python -m pip install -e '.[test,dashboard]'
cp .env.example .env

ต้องใช้ Python 3.10 ขึ้นไป ห้าม commit .env, database, log, archive หรือ private key และใช้คีย์ Binance แบบอ่านอย่างเดียวแยกสำหรับ dashboard

Profile คำสั่ง หมายเหตุ
local -m bin.verification_harness --profile local รัน Semgrep
release --profile release ใช้ SHA ที่เซ็นแล้วของ candidate สุดท้าย
testnet --profile testnet หลักฐานบน Testnet
pi --profile pi ไม่ติดตั้งหรือรัน Semgrep

Exit code: 0 PASS, 1 FAILED, 2 BLOCKED การ deploy ใช้ SHA เต็ม 40 ตัวอักษรจากรายงาน PASS เท่านั้น และห้ามลบหลักฐานหรือลดเกณฑ์เพื่อเปลี่ยนผล

แพลตฟอร์มที่รองรับ

แพลตฟอร์ม ใช้ทำอะไร
Raspberry Pi OS 64-bit เป้าหมายหลักของ production และ Testnet
Debian/Ubuntu พัฒนา, backtest, Testnet
macOS พัฒนา, ทดสอบ, backtest (DRY/Testnet)
Windows + WSL2 พัฒนาและทดสอบ ไม่อ้างว่า Windows ตรง ๆ ใช้ LIVE ได้

Replay และ backtest

Replay อ่านเหตุการณ์ตลาดแบบ JSONL ตามลำดับเวลา จำลองข้อมูล L2 กับคิว price-time ในเครื่อง และไม่อ้างว่าสร้าง L3 ของ Binance ได้ตรงตามจริง หลักฐานต้องมี hash ของ archive และ latency ที่วัดได้ ผลจำลองถูกเทียบกับผลจริงของคำสั่งที่จบแล้ว และ calibration archive หนึ่งชุดมีรายงานตรวจสอบได้หนึ่งฉบับ

Dashboard และ Telegram

ช่องทาง เนื้อหา
Dashboard สุขภาพโฮสต์, balance, protection, order, FIFO, HALT, SHADOW, latency
Telegram รายวัน 08:00 Asia/Almaty รายงานเมื่อวาน กับ 7 และ 30 วัน
รายงานรายวัน fill, ค่าธรรมเนียม, cash flow, FIFO net PnL
การเตือน dedupe ตามการเปลี่ยนสถานะ, hysteresis, outbox บนดิสก์

ข้อจำกัด ความเสี่ยง และความเข้าใจผิด

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

ข้อจำกัดที่โปรเจกต์ยอมรับเอง

ประเด็น รายละเอียด
สถานะ experimental
หลักฐาน LIVE canary หนึ่งรอบเท่านั้น
ยังต้องมี วงจรที่ปิดเอง และ soak ต่อเนื่อง
งานค้าง reconnect rate ของ transport v4 ยังไม่เสถียร
ข้อบกพร่องที่ระบุ undercount ของ recent-error, Decimal-to-JSON ใน VWAP autotune
โค้ดเก่า คำนวณ percentage ladder ด้วย float และ CAP fallback ที่ไม่ถูกต้อง
ผูกกับ exchange ไม่เกี่ยวข้องและไม่ได้รับการรับรองจาก Binance

ความเข้าใจผิดที่พบบ่อย

ความเข้าใจผิด ความจริง
fail-closed คือไม่มีทางขาดทุน แค่ป้องกันสถานะที่ไม่รู้ ตลาดยังขาดทุนได้
ผ่าน Testnet = พร้อม LIVE LIVE ต้องผ่านการตรวจของแต่ละบัญชีและโฮสต์
AI สั่งซื้อขายเอง AI ไม่มีเครื่องมือสั่งคำสั่ง
ตัวเลข SHADOW คือผลจริง SHADOW ไม่เปลี่ยนคำสั่ง จึงเป็นหลักฐานไม่ใช่กำไร
ผลคัดเลือกที่สูงยืนยันได้เอง ต้อง freeze แล้วเก็บข้อมูลใหม่

ข้อผิดพลาดที่ควรหลีกเลี่ยงเมื่อนำไปใช้

  • ข้าม Testnet แล้วใช้คีย์ Mainnet ทันที
  • ใช้คีย์เดียวทั้งเทรดและ dashboard
  • ตีความผล BLOCKED ว่าเกือบผ่าน
  • ปรับเกณฑ์ให้หลวมเพื่อให้ผลเปลี่ยน
  • เก็บ .env หรือ database ไว้ใน Git

Checklist ก่อนขึ้น LIVE

สถานะ รายการ
🟢 ผ่าน Testnet จริง: BUY, fill, protection, exit
🟢 คีย์ dashboard แยกและอ่านอย่างเดียว
🟡 ตรวจ balance, filter, OCO/STOP, gap, restart recovery
🟡 circuit breaker และ limit ผ่านการตรวจ
🟡 verification profile release ได้ PASS บน SHA สุดท้าย
🔴 วงจรที่ปิดเอง และ soak ต่อเนื่อง ยังขาดตามสถานะโปรเจกต์
⚪ ยืนยัน LIVE ครบทุกจุด ทำท้ายสุด

ความหมาย: 🟢 โปรเจกต์ระบุว่าต้องทำและต้องมี, 🟡 ต้องตรวจเองต่อบัญชี, 🔴 ช่องว่างที่ยังเปิด, ⚪ ทำที่หลัง

ข้อมูลที่ไม่มีและข้อสมมติ

ประเด็น สถานะ
สูตรระยะห่างและขนาด ladder ไม่มีในเอกสารที่อ่าน ต้องดูซอร์ส
ผล backtest หรือกำไรจริง ไม่เผยแพร่ ไม่มีตัวเลขให้เปรียบเทียบ
เอกสารที่ยังไม่ได้อ่าน DECISIONS, MISTAKES, CONFIGURATION, RUNTIME_SAFETY
ความถูกต้องของโค้ด ไม่ได้อ่านซอร์สและไม่ได้รันระบบ
[ASSUMPTION] ใช้ ladder ตามคำนิยามทั่วไปของตลาด

Decision และขั้นต่อไป

Recommendation ถ้าจะเรียนรู้จากโปรเจกต์นี้ ให้เริ่มจากเอกสาร Runtime safety and reporting และ Implementation status เพื่อเก็บตารางตัดสินใจของ operator ก่อนอ่านโค้ด แล้วค่อยเอาแนวคิด journal, protection ที่ตรวจแล้ว และ SHADOW ไปใช้กับบอทของตัวเอง

Sources

  • โปรเจกต์: https://github.com/potekhinskill/Ladder-Dragon (MIT, อ่านเมื่อ 2026-10-10)
  • ไฟล์ที่อ่านจริง: README.md, docs/INTRODUCTION.md, docs/ARCHITECTURE.md
  • ไฟล์ที่ไม่ได้อ่าน: docs/RUNTIME_SAFETY_AND_REPORTING.md, docs/IMPLEMENTATION_STATUS.md, docs/CONFIGURATION.md, DECISIONS.md, MISTAKES.md

ตัวย่อที่ใช้ในหน้านี้

ตัวย่อทางเทคนิคและการเทรด

ตัวย่อ ชื่อเต็ม คืออะไร อ่านค่าอย่างไร
ATR Average True Range ค่าเฉลี่ยของช่วงราคาที่แกว่งจริง ATR สูง = ตลาดแกว่งกว้าง
EMA Exponential Moving Average ค่าเฉลี่ยเคลื่อนที่ถ่วงน้ำหนักข้อมูลใหม่ ราคาเหนือ EMA = แนวโน้มขึ้นระยะสั้น
VWAP Volume Weighted Average Price ราคาเฉลี่ยถ่วงด้วยปริมาณ ราคาต่ำกว่า VWAP = ถูกกว่าค่าเฉลี่ยวัน
ADX Average Directional Index ความแรงของแนวโน้ม ไม่บอกทิศ ADX สูง = แนวโน้มแรง
OCO One-Cancels-the-Other คำสั่งคู่ ขาหนึ่งทำงานอีกขาถูกยกเลิก ขาขายทำกำไรกับขาตัดขาดทุน
STOP Stop order คำสั่งที่ทำงานเมื่อราคาแตะจุดที่ตั้ง STOP ที่ 95 = ขายเมื่อราคาลงถึง 95
TP Take Profit คำสั่งขายเพื่อทำกำไร TP ที่ 120 = ขายเมื่อราคาถึง 120
CAP Capital cap เพดานเงินทุนที่ใช้ (ตามบริบทของโปรเจกต์) CAP 30 = ใช้ได้ไม่เกิน 30 หน่วยเงินอ้างอิง
FIFO First In, First Out จับคู่ lot ที่ซื้อก่อนกับการขายก่อน ดูตัวอย่าง 100 กับ 110 ด้านบน
PnL Profit and Loss กำไรขาดทุน +24.82 = กำไรสุทธิ
L2 Level 2 order book ข้อมูลความลึกตลาดแบบรวมตามราคา แต่ละราคามีปริมาณรวม
L3 Level 3 order book ข้อมูลระดับคำสั่งแต่ละรายการ เห็นทุกคำสั่งแยกกัน
OHLC Open High Low Close แท่งราคาสี่ค่า 100/105/98/103 = เปิด/สูง/ต่ำ/ปิด
VaR Value at Risk ขาดทุนสูงสุดที่คาดที่ระดับความเชื่อมั่นหนึ่ง VaR 95% = 100 ถูกเกินไม่ถึง 5% ของวัน
HMM Hidden Markov Model โมเดลสถานะซ่อนจากลำดับข้อมูล ใช้แยก regime
USDT Tether เหรียญที่อิงค่าเงินดอลลาร์ 10 USDT ≈ 10 ดอลลาร์
SOLUSDT Solana ต่อ USDT ชื่อคู่เทรด ราคา SOL เป็น USDT
RAG Retrieval-Augmented Generation AI ดึงข้อมูลอ้างอิงมาประกอบคำตอบ ในโปรเจกต์ใช้เฉพาะกรณีปิดจริงที่ PnL แน่ชัด
AI Artificial Intelligence ปัญญาประดิษฐ์ ในที่นี้เป็นผู้ให้คำแนะนำ
BUY, SELL ซื้อ, ขาย ด้านของคำสั่ง BUY 1 หน่วยที่ 100 = ซื้อ 1 หน่วยราคา 100
UP, FLAT, DOWN ป้ายผลทำนายทิศราคา ขึ้น, ทรงตัว, ลง DOWN แบบมั่นใจ = หยุด BUY
OS Operating System ระบบปฏิบัติการ Raspberry Pi OS 64-bit
PASS, FAILED, BLOCKED ผลของ verification ผ่าน, ไม่ผ่าน, หลักฐานไม่ครบ exit code 0, 1, 2

ตัวย่อด้านโหมดและระบบ

ตัวย่อ ชื่อเต็ม คืออะไร อ่านค่าอย่างไร
DRY Dry run โหมดจำลอง ไม่ส่งคำสั่ง ค่าเริ่มต้น
LIVE Live trading โหมดส่งคำสั่งจริงบน Mainnet ต้องยืนยันหลายจุด
SHADOW Shadow mode เก็บหลักฐานโดยไม่เปลี่ยนคำสั่ง บันทึกแต่ไม่ลงมือ
APPLY Apply mode ให้กฎใหม่เปลี่ยนคำสั่งจริง ต้อง operator อนุมัติ
HALT Halt state สถานะหยุด mutation ทุกชนิด เห็น HALT = ไม่ส่งคำสั่งใหม่
PANIC Panic regime สถานะตลาดอันตราย ใช้ safety veto ไม่ใช่ expectancy
NO_TRADE No trade ตัวเลือกไม่เทรด ใช้เป็น baseline เทียบกับกลยุทธ์ที่เทรด
CI Confidence Interval ช่วงความเชื่อมั่นของค่าที่ประมาณ ขอบล่างบวก = ยังบวกในกรณีแย่
SHA-256 Secure Hash Algorithm 256-bit ลายนิ้วมือของข้อมูล เปลี่ยน 1 ไบต์ ค่าเปลี่ยนทั้งหมด
SHA Git commit hash รหัส commit ต้องใช้ 40 ตัวอักษรเต็ม
JSON, JSONL JavaScript Object Notation รูปแบบข้อมูล, JSONL คือ 1 เหตุการณ์ต่อบรรทัด ใช้ใน manifest กับ archive
SQLite SQLite ฐานข้อมูลไฟล์เดียว ใช้เก็บ journal กับสถิติ
API Application Programming Interface ช่องทางเรียกบริการ คีย์ API ของ Binance
WSL2 Windows Subsystem for Linux 2 Linux บน Windows ใช้พัฒนาแทน Windows ตรง ๆ
CLI Command-Line Interface โปรแกรมที่รันจากบรรทัดคำสั่ง ไฟล์ใน bin/
ASGI Asynchronous Server Gateway Interface มาตรฐานเชื่อมเว็บ Python ใช้กับ FastAPI
FastAPI FastAPI เฟรมเวิร์กเว็บ Python ใช้ทำ dashboard
MIT MIT License สัญญาอนุญาตซอฟต์แวร์แบบเปิด ใช้และแก้ไขได้
Semgrep Semgrep เครื่องมือสแกนโค้ดตามกฎ รันใน profile local กับ release
IP Internet Protocol ที่อยู่เครือข่าย whitelist IP ของ Binance key
Pi Raspberry Pi คอมพิวเตอร์บอร์ดเล็ก เป้าหมาย production หลัก

แถวที่มาจากความรู้ทั่วไปไม่ใช่นิยามของโปรเจกต์: ATR, EMA, VWAP, ADX, OCO, STOP, TP, FIFO, PnL, L2, L3, OHLC, VaR, HMM, USDT, RAG, CI, SHA-256, JSON, SQLite, API, WSL2, CLI, ASGI, FastAPI, MIT, Semgrep, IP, Pi ส่วน DRY, SHADOW, APPLY, HALT, PANIC, NO_TRADE, CAP อ่านความหมายจากบริบทที่โปรเจกต์ใช้ ค่าตัวอย่างในคอลัมน์ "อ่านค่าอย่างไร" เป็นตัวอย่างประกอบของเรา

สัญลักษณ์ในสูตรและหน่วย

สัญลักษณ์ คืออะไร อ่านค่าอย่างไร
p p-value ความน่าจะเป็นของผลที่เห็นถ้าไม่มีผลจริง p = 0.010 ต่ำมาก
m จำนวนสมมติฐานที่ทดสอบพร้อมกัน m = 3 ให้เกณฑ์แรก 0.05/3
bps basis point 1 bps = 0.01% ดังนั้น 48 bps = 0.48%
x เครื่องหมายคูณ 1 x 100 = 100

Summary

ประเด็น ข้อสรุป
แกนของระบบ หยุดเมื่อไม่แน่ใจ และทุกการตัดสินใจตรวจย้อนกลับได้
ตัวป้องกัน BUY ที่ fill ต้องมี OCO หรือ STOP ที่ตรวจแล้ว
AI advisory เท่านั้น ไม่มีสิทธิ์สั่งคำสั่ง
เกณฑ์ปล่อยของใหม่ SHADOW แล้ว freeze, 56 decision ใหม่, CI บวก, Holm
หลักฐานที่วัดแล้ว canary หนึ่งรอบ ไม่มีตัวเลขกำไร
สถานะ experimental ไม่รับรองผลกำไร
  • ใช้แนวคิดได้ทันที: journal ก่อนส่งคำสั่ง, protection ที่ตรวจแล้ว, แยก cash flow กับ PnL
  • อย่าตีความเกณฑ์สถิติว่าเป็นหลักฐานของกำไร มันคือเกณฑ์กันความบังเอิญ
  • ช่องว่างที่ต้องตรวจเอง: สูตร ladder, ผลย้อนหลัง, ความถูกต้องของโค้ด
Facebook

ความรู้ที่เกี่ยวข้อง