Tool version: OkurraGlobal 2.00
หมายเหตุเกี่ยวกับขอบเขตของบท บทนี้อธิบายวิธีใช้งานพาเนล OkurraGlobal — เลย์เอาต์ เซ็กชันต่าง ๆ Apply และการบันทึกคอนฟิกูเรชัน ความหมายของการตั้งค่าระดับ global แต่ละตัว อยู่ในบทตามหัวข้อ: ฟิลเตอร์ระดับ global (10), Break Even Auto (12), Stop on Opposite (13), Daily P/L Limits (14), Equity Guard และ Profit Target (15), Trading Hours (16) ที่นี่คุณเรียนรู้ตัวเครื่องมือ ที่นั่น — เรียนรู้กลไก
สารบัญ
5.1 OkurraGlobal คืออะไร 5.2 ความสัมพันธ์กับ OkurraButton — พาเนลพี่น้อง 5.3 กายวิภาคของพาเนล 5.4 สองเลย์เอาต์: แนวตั้งและแนวนอน (แถบแท็บ) 5.5 ตระกูลของเซ็กชัน — ตั้งค่าอะไรที่ไหน 5.6 Apply (N) — ตัวนับการเปลี่ยนแปลงและการยืนยัน 5.7 Save / Load .set — setup เต็มของทั้ง EA 5.8 อินดิเคเตอร์ประกอบระดับ global 5.9 Cross-sync กับ OkurraButton 5.10 วงจรการออกแบบทั่วไปสำหรับการตั้งค่าระดับ global
5.1 OkurraGlobal คืออะไร
OkurraGlobal คือพาเนลออกแบบ (design panel) ตัวที่สองของโหมดออกแบบ (design mode) — พี่น้องของ OkurraButton ในขณะที่ OkurraButton ดูแลกลยุทธ์ทั้งห้า (B1…B5) OkurraGlobal ดูแลทุกสิ่งที่ ใช้ร่วมกันทั้ง EA: ฟิลเตอร์ระดับ global, ตัวพิทักษ์บัญชี (account guardians), กลไก Break Even Auto, Stop on Opposite, Trading Hours, ออบเจ็กต์บนชาร์ต และการตั้งค่าของพาเนลควบคุมเอง
การแบ่งนั้นเรียบง่าย:
- OkurraButton = สิ่งที่กลยุทธ์แต่ละตัวในห้าตัวทำ (บทที่ 4)
- OkurraGlobal = กรอบที่กลยุทธ์ทั้งหมดทำงานอยู่ภายใน — ฟิลเตอร์ที่แชร์ระหว่าง button, ลิมิตที่ปกป้องบัญชี, ชั่วโมงทำงาน, กลไกของ basket
เช่นเดียวกับ OkurraButton, OkurraGlobal เป็นเครื่องมือออกแบบ — คุณจัดวางการตั้งค่าในนั้น ดูผลที่เกิดขึ้น (เช่น ฟิลเตอร์ระดับ global บนชาร์ตผ่านอินดิเคเตอร์ประกอบ) แล้วบันทึกลง .set มันไม่เทรดอะไรทั้งสิ้น และเช่นเดียวกับ OkurraButton มันเป็นเครื่องมือฟรี (บทที่ 3.2) — ใช้งานได้ทันทีหลังติดตั้ง โดยไม่ต้องมีคีย์และไม่ต้องเปิดใช้งาน
มีความแตกต่างเชิงปฏิบัติที่สำคัญอยู่หนึ่งข้อ ซึ่งเราจะกลับมาพูดถึงในหัวข้อ 5.7: คุณบันทึก .set ฉบับเต็มจาก OkurraGlobal — คอนฟิกูเรชันที่สมบูรณ์ของทั้ง EA (การตั้งค่าระดับ global บวกกับ button ทั้งห้าตัว) OkurraButton บันทึกเฉพาะ button; OkurraGlobal บันทึกทุกอย่าง ด้วยเหตุนี้ในทางปฏิบัติ OkurraGlobal จึงมักเป็น “พาเนลที่คุณส่งออก setup ที่เสร็จแล้ว” มากกว่า
5.2 ความสัมพันธ์กับ OkurraButton — พาเนลพี่น้อง
OkurraButton และ OkurraGlobal ถูกออกแบบมาให้ ทำงานร่วมกันบนชาร์ตออกแบบ (design chart) เดียวกัน (โดยไม่มี EA — บทที่ 2) โดยค่าเริ่มต้น OkurraGlobal จะปรากฏทางขวาของ OkurraButton (ด้วยระยะเยื้องที่ตั้งไว้เพื่อไม่ให้พาเนลทับกัน) ดังนั้นหลังจากวางทั้งสองลงบนชาร์ต คุณจะมีตัวออกแบบกลยุทธ์อยู่ทางซ้ายและตัวออกแบบการตั้งค่าระดับ global อยู่ทางขวา
ทั้งสองทำงานร่วมกันในสองรูปแบบ:
- ไฟล์
.setที่ใช้ร่วมกัน พาเนลทั้งสองอ่านและบันทึกคอนฟิกูเรชันเดียวกัน เมื่อคุณโหลด.setในพาเนลหนึ่ง อีกพาเนลสามารถรีเฟรชส่วนของตัวเองได้ (cross-sync — หัวข้อ 5.9) - อินดิเคเตอร์ประกอบ (companion indicators) ระดับ global เทียบกับระดับ local OkurraButton ดึงอินดิเคเตอร์ประกอบที่แสดงฟิลเตอร์ของ button ที่ทำงานอยู่ เข้ามา; OkurraGlobal ดึงตัวที่แสดง ฟิลเตอร์ระดับ global (หัวข้อ 5.8) ทั้งสองอยู่ร่วมกันบนชาร์ตได้ — คุณเห็นบริบทระดับ global และ local พร้อมกัน
เช่นเดียวกับ OkurraButton, OkurraGlobal ไม่มีเหตุผลที่จะอยู่บนชาร์ตที่มี EA ทำงานอยู่ — เราแยกการออกแบบไว้ต่างหากจากการทำงานจริง (execution)
5.3 กายวิภาคของพาเนล
พาเนล OkurraGlobal จากบนลงล่าง:
- แถบชื่อ (Title bar) — ชื่อเครื่องมือ, ปุ่มยุบทั้งพาเนล (
[-]/[+]), ที่จับสำหรับลาก - แถบสถานะ (Status bar) — ข้อความแสดงสถานะ (เช่น “Loaded: …”, “Applied locally (state saved to disk)”, ข้อผิดพลาด)
- แถวปุ่มการกระทำด้านบน — ปุ่มระดับ global: R (Reset), Apply, Save, Load (หัวข้อ 5.6–5.7)
- เซ็กชันการตั้งค่า — 32 เซ็กชันที่ยุบได้ จัดกลุ่มตามหัวข้อ (หัวข้อ 5.5) ในหนึ่งในสองเลย์เอาต์ (หัวข้อ 5.4)
กลไกการแก้ไข เหมือนกับ OkurraButton ทุกประการ (บทที่ 4.6) คุณเปลี่ยนค่าได้ สามวิธี ขึ้นอยู่กับชนิดของช่อง:
- ตัวเลขและข้อความ — คลิกที่ช่อง พิมพ์ค่า ยืนยันด้วย ENTER (ESC ยกเลิก)
- ช่องที่มีตัวเลือกจำนวนน้อย (2–3) — แต่ละคลิกจะกระโดดไปยังค่าถัดไปวนเป็นวงรอบ (คลิกแล้วยืนยันทันที ไม่ต้องกด ENTER) สวิตช์ on/off ทำงานแบบนี้ รวมถึงโหมด Equity Guard (target/trailing), การกระทำของ Daily P/L หรือการกระทำของ stop แบบ 3 สถานะ
- รายการที่ยาวกว่า (timeframe, enum ขนาดใหญ่) — การคลิกจะ เปิดเมนู ให้คุณเลือกรายการจากในนั้น
เช่นเดียวกับใน OkurraButton การแยก draft → applied ก็ใช้ที่นี่: การแก้ไขจะเข้าไปอยู่ในเวอร์ชันร่าง และมีเพียง Apply เท่านั้นที่ยืนยันมัน (หัวข้อ 5.6) ส่วนช่องที่ยังไม่ได้ยืนยันจะเรืองเป็น สีทอง พาเนลยังรองรับการปรับสเกลขนาด การเลือกมุมและตำแหน่ง ฟอนต์ Consolas และการลากด้วยแถบชื่อ — เหมือนพาเนลพี่น้องของมัน
5.4 สองเลย์เอาต์: แนวตั้งและแนวนอน (แถบแท็บ)
OkurraGlobal มีเซ็กชันมากกว่า OkurraButton (32 เทียบกับ 11) จึงเสนอ สองวิธีในการจัดวางเซ็กชันเหล่านั้น:
เลย์เอาต์แนวตั้ง (คลาสสิก, ค่าเริ่มต้น) เซ็กชันเรียงซ้อนกันลงมาทีละอัน แต่ละอันยุบได้ผ่านหัวข้อที่มี +/− คุณเลื่อนพาเนลและกางเซ็กชันที่กำลังทำงานอยู่ ในเลย์เอาต์นี้หัวข้อของแต่ละเซ็กชันยังมีปุ่ม “A” (quick-Apply) เป็นตัวเลือกด้วย — มันยืนยันเฉพาะเซ็กชันนั้น (ตัวเลือกที่เปิดใช้ในการตั้งค่าพาเนล)
เลย์เอาต์แนวนอน (แถบแท็บ) ที่ด้านบนของพาเนล (ใต้แถวปุ่มการกระทำ) จะปรากฏ แถบแนวนอนของแท็บแคบ ๆ — หนึ่งแท็บต่อหนึ่งเซ็กชัน ป้ายกำกับของแต่ละแท็บคือรหัสสั้นของเซ็กชันที่เขียน ทีละตัวอักษรในแนวตั้ง (เช่น DPL, EG, GSAR, GOKUR, TH) คุณคลิกแท็บแล้วพาเนลจะแสดง เฉพาะเซ็กชันนั้นเซ็กชันเดียว เต็มความกว้าง วิธีนี้ทำให้พาเนลกระชับในแนวตั้ง — แทนที่จะเป็นรายการยาว คุณมี “บัตรดัชนี” ที่สลับได้ด้วยคลิกเดียว สะดวกเมื่อคุณออกแบบทีละเรื่อง (เช่น เฉพาะ Trading Hours) และไม่อยากเลื่อนดูทั้งหมด
สวิตช์สลับระหว่างเลย์เอาต์และแท็บที่เลือกไว้จะถูก จดจำ (ต่อชาร์ต) ดังนั้นพาเนลจะกลับมาเป็นการจัดวางของคุณหลังเปลี่ยน timeframe หรือรีสตาร์ต
เลือกเลย์เอาต์ไหนดี? แนวตั้งดีเมื่อคุณอยากเห็นหลายเซ็กชันพร้อมกันและเลื่อนดู แนวนอน — เมื่อคุณมีเซ็กชันจำนวนมากและชอบกระโดดไปมาระหว่างเซ็กชันเหมือนแท็บ นี่เป็นความชอบด้านภาพล้วน ๆ ไม่มีผลต่อการตั้งค่าที่กำลังออกแบบ
5.5 ตระกูลของเซ็กชัน — ตั้งค่าอะไรที่ไหน
สามสิบสองเซ็กชันฟังดูเยอะ แต่มันจัดกลุ่มลงเป็น แปดตระกูลเชิงตรรกะ ลำดับบนพาเนลนั้นตั้งใจ: จากการจัดการโพซิชันและเงิน ผ่านฟิลเตอร์และกลไกของ basket ไปจนถึงการตั้งค่าของตัวพาเนลเอง
| ตระกูล | เซ็กชันบนพาเนล | ความหมาย → บท |
|---|---|---|
| โพซิชันและตัวพิทักษ์บัญชี | Global Position Management · Daily P/L Limits · Equity Guard · Profit Target · T. on Server | 9, 14, 15 |
| เซสชันการเทรด | Trading Hours | 16 |
| ฟิลเตอร์ระดับ global | Global SAR Filter · Global MMD Filter · Global SR Filter · Global OKUR Filter | 10 |
| Break Even Auto | Break Even Auto (BEa) · BEa Auto-Arm: Time-of-day / SAR Flip / MMD Cross / SR Break / OKUR Cross | 12 |
| Stop on Opposite | StopOpp Setup · StopOpp SAR · StopOpp MMD · StopOpp SR · StopOpp OKUR | 13 |
| ออบเจ็กต์บนชาร์ต | Activation Zones · Target Lines | 11 |
| เซ็นเซอร์ Price movement | Price Movement (การตั้งค่าที่ใช้ร่วมกัน + 4 บล็อกเซ็นเซอร์) | 18 |
| พาเนลและระบบ | Control Panel (+ Info, + Layout) · Global Core · Alerts · Panel: Global Actions / Status + Target Blocks / Trade Markers | 8, 20 |
ข้อสังเกตเชิงปฏิบัติสองสามข้อเกี่ยวกับการแบ่งนี้:
- ฟิลเตอร์ global (4 เซกชัน) คือชุด SAR/MMD/SR/OKUR ที่ใช้ร่วมกัน ซึ่ง button จะ “เสียบเข้าไป” ผ่าน opt-in Use Global … Filter (บทที่ 4.5 ความหมายอยู่ในบทที่ 10) ที่นี่คุณตั้งค่ามันครั้งเดียวสำหรับทั้ง EA เซกชัน Global SR Filter มี — ถัดจากแถว SR Reaction Mode — แถว “SR Last Zone Mode” คือโหมดที่โซน SR ที่ยืนยันล่าสุดกำหนดทิศทางการเข้าที่อนุญาตเพียงทิศทางเดียว (บทที่ 10.5)
- Break Even Auto มีมากถึงหกเซกชัน — ตัว BEa เอง บวกกับเซกชัน trigger ของ Auto-Arm แยกกันอีกห้าเซกชัน (Time, SAR, MMD, SR, OKUR) สิ่งนี้สะท้อนว่า trigger แต่ละตัวมีพารามิเตอร์อิสระของตัวเอง (บทที่ 12) ตั้งแต่รุ่น 1.28 เซกชัน BEa Auto-Arm: OKUR Cross บรรจุ trigger สองตัว บนอินสแตนซ์ของ oscillator ที่ใช้ร่วมกัน: OKUR transition แบบอิงโซน และแถว Bounce (arm on pull-back) / Bounce BUY Th / Bounce SELL Th / Bounce Correction — trigger ตัวที่หก ซึ่ง arm เมื่อเกิดการเด้งออกจากจุดสุดขั้วของความอ่อนแรง (บทที่ 12.7) เซกชัน “Break Even Auto (BEa)” เองยังบรรจุเซลล์ที่ควบคุม guard และขนาดของ add-on position ด้วย: Zero-level guard (ตั้งแต่ Global 1.15 — zero-level guard มีสวิตช์ของตัวเอง เปิดใช้งานโดยค่าเริ่มต้น), Adapted sizing, Multisize x / step / max lot (ตั้งแต่รุ่น 2.00 ตัวคูณรับค่าทศนิยม และค่าต่ำกว่า 1 ให้ผลเป็นการลดขนาดแบบถดถอย — บทที่ 12.6), Adapted 1st hedge % of basket (ตั้งแต่ Global 1.15 — สเกลของ add-on แรกของ shield), Adapted tolerance unit (ตั้งแต่ Global 1.15 — หน่วยของ threshold: lot หรือ % ของ basket ที่ถูกปกป้อง) และ Adapted tolerance (0=flip, -=early) — threshold ของ zero-level guard (จนถึง Global 1.14 ใช้ป้ายชื่อ “Adapted tolerance lots (0=flip)”); บวกกับแถว 1st hedge open on arm (เดิมคือ “Instant open on arm”) และ Manual arm incl. all (เปิดใช้งานโดยค่าเริ่มต้น — การ arm ด้วยมือจะกวาดทั้งทิศทางเข้ามา; บทที่ 12.3); ตั้งแต่ Global 1.23 ที่ท้ายเซกชันยังมีคู่ Auto-Arm Mode SELL / BUY ด้วย — โหมดการรวม trigger Auto-Arm ของทิศทางนั้น (any (OR) = ตัวแรกที่เข้าเงื่อนไขจะ arm, ค่าเริ่มต้น; all (AND) = คอนฟลูเอนซ์ของทุกตัวที่เปิดใช้งาน; บทที่ 12.8); ความหมายของทั้งหมดอธิบายไว้ในบทที่ 12.6
- Stop on Opposite มีห้าเซกชัน — StopOpp Setup ที่ใช้ร่วมกัน บวกกับอีกหนึ่งเซกชันต่อฟิลเตอร์ (SAR/MMD/SR/OKUR) โดยมีพารามิเตอร์อิสระจากฟิลเตอร์ของการเข้า (บทที่ 13) เซกชัน StopOpp Setup (ตั้งแต่ Global 1.25) สะท้อนกลุ่ม F7 “Stop Opposite Setup” และบรรจุแถว Sources Mode (all buttons) — โหมดการรวมฟิลเตอร์ SO ที่ทำงานอยู่ของ button ในระดับ global (any (OR) = ตัวแรกที่สวนทางจะตอบสนอง, ค่าเริ่มต้น; all (AND) = ตอบสนองเมื่อทุกตัวสวนทางพร้อมกันเท่านั้น; บทที่ 13.9) ค่านี้ใช้ร่วมกันสำหรับทุกแหล่งและทุก button — จึงอยู่ในเซกชันของตัวเอง ไม่ใช่ในเซกชันแบบต่อฟิลเตอร์อันใดอันหนึ่ง
- T. on Server — เซกชันแยกในตระกูลตำแหน่ง/ผู้พิทักษ์ (บนพาเนลใช้ป้ายชื่อนี้): โหมดการเขียน SL/TP จริง ไว้ฝั่งเซิร์ฟเวอร์ของ broker (พร้อมตารางเวลา) เป็นทางเลือกแทน virtual (stealth) SL/TP ที่ EA คอยเฝ้าดู เราอธิบายกลไกนี้ในบทที่ 9
- ตระกูล “Price movement sensors” คือเซกชัน Price Movement เพียงเซกชันเดียว (การตั้งค่าที่ใช้ร่วมกันของตระกูล + บล็อกเซนเซอร์สี่บล็อก บล็อกละหกแถว) — ในทางกายภาพบนพาเนลมันอยู่ระหว่าง Global Core กับ Alerts; ความหมายอยู่ในบทที่ 18
- ตระกูล “Panel and system” ไม่เกี่ยวกับกลยุทธ์ แต่เกี่ยวกับหน้าตาและการมองเห็นของแผงควบคุม EA — จะแสดงอะไร จัดวางอย่างไร Global Core บรรจุการตั้งค่าระบบ: Magic Number พร้อมกับการทำ virtualization ของ pending order และ SL/TP (พาเนลไม่แสดงคีย์ license — คุณกรอกมันได้เฉพาะใน inputs ของ EA เท่านั้น บทที่ 3) ความหมายของการตั้งค่าเหล่านี้อธิบายไว้พร้อมกับพาเนล EA (บทที่ 8) เซกชัน Alerts ก็อยู่ในตระกูลนี้ด้วย — สิบเซลล์สำหรับปิดเสียง popup แจ้งเตือนของ EA (สวิตช์แจ้งเตือนตัวที่สิบเอ็ด — Own Registry Popup — อยู่เฉพาะในหน้าต่าง Inputs ของ EA เท่านั้น; อธิบายด้านล่างในหัวข้อย่อยนี้)
บทนี้ว่าด้วยเรื่องที่ว่าการตั้งค่าเหล่านี้อยู่ที่ไหนและจะยืนยันมันอย่างไร สำหรับความหมายของแต่ละอย่าง ให้ไปดูบทที่ระบุไว้ในคอลัมน์ด้านขวา
สิ่งเดียวกันนี้ตั้งค่าได้ในตัว EA เอง แต่ละเซกชันเหล่านี้ตรงกับกลุ่มพารามิเตอร์ในหน้าต่าง Inputs ของ EA (เช่น Global Position Management, Daily P/L Limits, Equity Guard, T. on Server, Trading Hours…) ดังนั้น OkurraGlobal จึงไม่ได้จำเป็นในทางเทคนิค — คุณตั้งค่าทุกอย่างได้โดยตรงใน EA ผ่าน F7 อย่างไรก็ตาม พาเนลให้การแบ่งเป็นเซกชันที่อ่านง่าย ให้ภาพตัวอย่างของฟิลเตอร์ global บนกราฟ และมีเครื่องหมายสีทองของการเปลี่ยนแปลงที่ยังไม่ได้ยืนยัน การออกแบบในพาเนลจึงสะดวกกว่าและเกิดข้อผิดพลาดได้ยากกว่ารายการ Inputs ดิบ ๆ ที่ยาวเหยียด (บทที่ 8.1)
เซลล์ในเซกชัน Position Management — รวมถึงค่าเบี่ยงเบนราคา (slippage)
ในตระกูล Position and account guardians เซกชัน Position Management รวบรวมการตั้งค่าการส่งคำสั่งระดับ global ถัดจากเซลล์ “Max Spread (pts)” (spread สูงสุดที่ยอมรับได้) และ “TS Min Delta (pts)” ยังมีเซลล์ ค่าเบี่ยงเบนราคา (slippage) อีกสองเซลล์:
- “Open Slippage (pts)” (ค่าเริ่มต้น 20) — ค่าเบี่ยงเบนราคาสูงสุดที่ยอมรับได้เมื่อเปิดตำแหน่ง
- “Close Slippage (pts)” (ค่าเริ่มต้น 500) — ค่าเบี่ยงเบนสูงสุดเมื่อปิด ค่ายิ่งมาก = การปิดถูกปฏิเสธน้อยลง (ในทางปฏิบัติคือการออกแบบบังคับ โดยแลกกับราคาที่แย่ลงเล็กน้อย)
ทำไมต้องเผื่อมากขนาดนั้นตอนปิด: บนบัญชีที่ใช้การส่งคำสั่งแบบ Instant broker จะยึดตามค่าเบี่ยงเบนที่อนุญาต และในช่วงที่ราคาวิ่งเร็วอาจปฏิเสธการปิดหรือการแก้ไข (requote) การเผื่อระยะอย่างใจกว้างตอนปิดทำให้การออกเชิงป้องกัน (การปิดฉุกเฉินของ Break Even, Equity Guard, virtual SL, การกด Close All ด้วยมือ) ไม่ถูกปฏิเสธ บนบัญชีแบบ Market ค่าเบี่ยงเบนจะถูกละเลย (การปิดวิ่งตามราคาตลาดอยู่แล้ว) แนวคิดเรื่อง Market / Instant execution และ slippage — บทที่ 3
คุณตั้งค่าเหล่านี้ในพาเนล OkurraGlobal แล้วจากนั้น — เหมือนทุกการตั้งค่า — บันทึกลง .set และโหลดเข้า EA ผ่าน F7 (ส่วน 5.7)
การนอร์มัลไลซ์ lot ตามความผันผวน (ATR) — หกเซลล์
ตั้งแต่รุ่น 2.00 เซกชัน Position Management ยังบรรจุ หกเซลล์ของการนอร์มัลไลซ์ lot ด้วย ATR — กลไกที่ปรับสเกล lot พื้นฐานของทุก button แบบผกผันกับความผันผวนปัจจุบันของตลาด (ความผันผวนสูง = lot เล็กลง, ต่ำ = ใหญ่ขึ้น): สวิตช์ Lot ATR Enabled, period และ timeframe ของ ATR, ATR อ้างอิงเป็นจุด (= 100% ของ lot; 0 = กลไกอยู่เฉย ๆ แม้จะเปิดสวิตช์ไว้ก็ตาม) และขอบเขตเปอร์เซ็นต์ Min/Max (ค่าเริ่มต้น 25–400%) ทั้งหมดนี้ปิดใช้งานโดยค่าเริ่มต้น ความหมายและการปรับเทียบอธิบายไว้ในบทที่ 9.9; เช่นเดียวกับทุกเซกชันของ Global คุณส่งออกค่าผ่าน .set (คีย์ LotATR_*) และโหลดเข้า EA ผ่าน F7 — กลุ่มเดียวกันนี้ในหน้าต่าง Inputs ของ EA เรียกว่า “Lot Volatility Normalization (ATR)“
Monitor Own Only — โหมด “เฉพาะของตัวเอง”
เซลล์ “Monitor Own Only” (เปิดใช้งานโดยค่าเริ่มต้น) สลับ EA เข้าสู่โหมด “เฉพาะของตัวเอง”: หุ่นยนต์จะจัดการ (Break Even, Trailing, virtual SL/TP, basket, การปิดทั้งหมด) เฉพาะตำแหน่งที่ตัวมันเองเปิดเท่านั้น — ไม่ใช่ทุกตำแหน่งที่มี Magic Number ตรงกันบนสัญลักษณ์นั้น
มีไว้ทำไม: เมื่อ EA สองอินสแตนซ์ทำงานบนสัญลักษณ์เดียวกันด้วย Magic Number เดียวกัน (หรือทับซ้อนกัน) — เช่น กราฟสองอันของเครื่องมือเดียวกันที่ตั้งค่าต่างกัน — หากไม่มีโหมดนี้ แต่ละตัวจะเห็นตำแหน่งของอีกตัวเป็นของตัวเอง (“การรั่วข้าม”): มันจะนับรวมเข้า basket ของตัวเอง เลื่อน stop ของตำแหน่งเหล่านั้น และปิดตำแหน่งของคนอื่นเมื่อสั่ง Close All ในโหมด “เฉพาะของตัวเอง” แต่ละอินสแตนซ์จะเก็บรีจิสทรีตำแหน่งของตัวเอง (ไฟล์ถาวรใน MQL5/Files/OKU/ea_memory/ ระบุตัวตนด้วยบัญชี สัญลักษณ์ Magic และกราฟ) ซึ่งอยู่รอดจากการรีสตาร์ตเทอร์มินัลและการรีคอมไพล์
EA รู้ได้อย่างไรว่าตำแหน่งนั้นเป็น “ของตัวเอง”? ตั้งแต่ EA 1.11 รายการในรีจิสทรีถูกสร้างขึ้นในขณะที่อินสแตนซ์นี้ส่งคำสั่ง — ไม่ใช่จาก Magic Number ที่อ่านย้อนกลับมาจากการแจ้งเตือนของ broker นี่คือการเสริมความแข็งแรงโดยเจตนา: การแจ้งเตือนของ broker อาจไม่ครบถ้วน (คำสั่งแบบอะซิงโครนัสที่ถูกปฏิเสธอาจกลับมาโดยไม่มี Magic) และเมื่อสองอินสแตนซ์ใช้ Magic ร่วมกันหรือทับซ้อนกัน รีจิสทรีที่ป้อนด้วยการแจ้งเตือนจะบันทึกให้แต่ละตัวรวมถึงการเปิดของเพื่อนบ้านด้วย — เจาะรูการแยกส่วนตรงจุดที่มันควรจะปกป้องพอดี ตอนนี้ตำแหน่งของอินสแตนซ์ข้างเคียงจะไม่มีวันเข้าไปอยู่ในรีจิสทรี; ช่วงเวลาเดียวที่ EA เพิ่มตำแหน่ง “ตาม Magic” คือการ adopt ครั้งเดียวตอนเริ่มใช้โหมดนี้ครั้งแรก (ดูด้านล่าง)
พฤติกรรมสามอย่างที่ควรรู้:
- การอัปเดตบน basket ที่เปิดอยู่นั้นปลอดภัย เมื่อรันโหมดนี้ครั้งแรก (ยังไม่มี registry) EA จะ adopt position ที่เปิดอยู่ในขณะนั้นซึ่งมี Magic ของตัวเองโดยอัตโนมัติ — ไม่มีอะไรหลุดออกจากการดูแล หาก registry มีอยู่แล้วแต่ยังมีบาง position อยู่นอก registry (กรณีฉุกเฉิน) ในการตั้งค่าของ EA มีสวิตช์แบบใช้ครั้งเดียว
Global_OwnOnly_AdoptExisting(ปิดไว้เป็นค่าเริ่มต้น): เปิดใช้งาน รีสตาร์ท EA — มันจะเพิ่ม position ปัจจุบันทั้งหมดที่มี Magic ของตัวเองเข้าไปใน registry — แล้วปิดกลับ - ทนทานต่อการปฏิเสธของ Broker position จะถูกลบออกจาก registry ก็ต่อเมื่อมัน หายไปจากบัญชีจริง ๆ แล้วเท่านั้น การปิดที่ถูก Broker ปฏิเสธไม่ได้ผลักมันออกจากการปกป้อง
- ขอบเขตของโหมดนี้: มันแยก การจัดการ position ที่เปิดอยู่ ผลลัพธ์ที่ปิดแล้วของวัน (Daily P/L) ยังคงนับต่อ Magic Number — สอง instance ที่ใช้ Magic ร่วมกันยังคงแบ่ง “ศูนย์ประจำวัน” ร่วมกัน ด้วยเหตุนี้การเว้นระยะฐาน Magic ให้ห่างกัน (ทีละ ≥7) จึงยังเป็นสิ่งที่แนะนำ (บทที่ 9); “own only” ป้องกันการปะปนกันของ basket แต่ไม่ได้ยกเว้นคุณจากสุขอนามัยของ Magic
การปิดเซลล์นี้จะคืนพฤติกรรมแบบเดิม (ทุกอย่างตาม symbol+Magic) เซลล์ที่เกี่ยวข้องกันคือ “Markers Own Only” ในส่วน Panel: Trade Markers ซึ่งจำกัด การแสดงผล ของการเทรด (ลูกศรประวัติและเส้น position) ให้เหลือเฉพาะ instance นี้ในลักษณะเดียวกัน — รายละเอียดในบทที่ 19
Close Model — วิธีที่ EA ส่งคำสั่งปิด
สองเซลล์ควบคุมวิธีการส่ง คำสั่งปิด (Close All, Equity Guard, Profit Target, Basket Max Loss, BEa, virtual SL/TP):
- “Close Model (0=Auto 1=Sync 2=Async 3=Adapt)” (ค่าเริ่มต้น 0 = Auto; จนถึง EA 1.22 ค่าเริ่มต้นคือ 3 = Adaptive) — โหมดของความพยายามปิด ครั้งแรก:
- 0 Auto — พฤติกรรมแบบคลาสสิก: เคารพสวิตช์ Async Close All
- 1 Sync — ซิงโครนัสเสมอ: การปิดแต่ละครั้งรอการยืนยันจาก Broker ก่อนที่คำสั่งถัดไปจะออกไป (ช้าที่สุดเมื่อ basket ใหญ่ คาดเดาได้สูงสุด)
- 2 Async — อะซิงโครนัสเสมอ: ส่งทั้ง basket ออกไปพร้อมกัน (เร็วที่สุด)
- 3 Adaptive — อะซิงโครนัส แต่ มีการเรียนรู้: ถ้าหลังการส่งแบบอะซิงโครนัส Broker ทิ้ง position ที่ยังไม่ปิดไว้ EA จะสลับไปโหมดซิงโครนัสตลอดช่วง cooldown หลังจากนั้นมัน จะกลับ ไปลองแบบอะซิงโครนัสด้วยตัวเอง
- “Adapt Sync Cooldown (min)” (ค่าเริ่มต้น 30) — ความยาวของ cooldown นั้นเป็นนาที
อธิบายเป็นความเรียงเกี่ยวกับชุดค่าเริ่มต้น (ตั้งแต่ EA 1.23): โหมด Auto เคารพสวิตช์ Async Close All และสวิตช์นั้น ปิด ไว้เป็นค่าเริ่มต้น — ดังนั้นถ้าไม่เปลี่ยนอะไรเลย การปิดทุกครั้งจะรอการยืนยันจาก Broker (คาดเดาได้สูงสุด) หากคุณต้องการปิด basket ขนาดใหญ่ให้เร็วขึ้น ให้เปิด Async Close All หรือสลับโมเดลเป็น Async/Adaptive — กลไกของโหมดต่าง ๆ ไม่เปลี่ยนแปลง
ตาข่ายนิรภัยทำงานเสมอ ไม่ว่าจะใช้โมเดลใด หลังการส่งทุกครั้ง EA จะ ตรวจสอบ ว่า position ปิดจริงหรือไม่ เก็บกวาดตัวที่ตกค้างแบบซิงโครนัส และแจ้งเตือน โมเดลเลือกเพียง นัดแรก เท่านั้น — การตรวจสอบและการเก็บกวาดเป็นสิ่งที่ถอดออกไม่ได้
ก่อนที่ EA จะส่งอะไรก็ตาม มันยังตรวจสอบด้วยว่าการเทรดถูกเปิดใช้งานอยู่หรือไม่ (AutoTrading ของเทอร์มินัล + สิทธิ์ algo สำหรับ EA) เมื่อไม่ได้เปิด — แทนที่จะเป็นการปฏิเสธถล่มทลาย คุณจะได้รับการแจ้งเตือน “PROTECTION OFFLINE” ที่ชัดเจนหนึ่งครั้งทุกนาที (บทที่ 21.6)
Commission per Lot — commission ของ Broker ในการคำนวณผลลัพธ์
เซลล์ “Commission / 1.0 Lot RT (0=off)” (ค่าเริ่มต้น 0 = ปิด) บอก EA ถึงค่าประมาณของ ต้นทุน commission ของ Broker สำหรับ 1.0 lot ทั้งไปและกลับ (round-turn: เปิด + ปิด) ในสกุลเงินของบัญชี ตัวอย่าง: Broker คิด 3.50 USD ต่อข้าง → ใส่ 7.0 คุณจะพบค่านี้ในข้อกำหนดบัญชีของ Broker ของคุณ
มีไว้เพื่ออะไร: แพลตฟอร์มไม่รายงานค่า commission บนโพซิชันที่เปิดอยู่ — กำไร/ขาดทุนปัจจุบัน (floating) ของมันจึงดูดีกว่าความเป็นจริง เมื่อคุณใส่ค่าลงไป EA จะลด floating ของทุกโพซิชันที่เปิดอยู่ลงเท่ากับ lots × cost เพื่อให้ Equity Guard, Basket Max Loss, Daily P/L และแผง Status เห็นผลลัพธ์สุทธิ และตอบสนองที่ระดับ threshold จริง ไม่ใช่ระดับที่ถูกทำให้สูงเกินจริงด้วยต้นทุน นอกจากนี้:
- “Close profitable only” (และ Profit Target ในโหมด “close losing only”) จะไม่ถือว่า position ที่แทบจะครอบคลุมแค่ commission ของตัวเองเป็น position ที่มีกำไร
- shield ของ BEa ขยับระดับ break-even เพื่อให้ “ศูนย์” ครอบคลุม commission ของ basket ด้วย — มันจึงปิดช้าลงเล็กน้อย แต่ที่ศูนย์จริงหลังหักต้นทุน (บทที่ 12.2)
EA ไม่ประมาณค่า สำหรับการเทรดที่ปิดแล้ว — ตรงนั้นมันนับ commission จริงที่ Broker ลงบัญชีไว้ เสมอ (รวมถึงส่วนที่ถูกเรียกเก็บไปแล้วตอนเปิด position) ค่า 0 = การคำนวณผลลัพธ์เหมือนเดิมทุกประการ
ส่วน Alerts — การควบคุมหน้าต่างป๊อปอัป
EA รายงานเหตุการณ์สำคัญด้วย ป๊อปอัปแจ้งเตือน ของ MetaTrader (Alert) และหากต้องการก็ยังส่ง push notification ไปยังโทรศัพท์ของคุณได้ด้วย ระหว่างการเทรดที่เข้มข้น ป๊อปอัปอาจกองพะเนิน — ส่วน Alerts (ตั้งแต่ EA 1.08 / Global 1.05) ให้คุณเปิดใช้งานแต่ละกลุ่มแยกกัน สวิตช์สิบเอ็ดตัว (ตัวที่สิบ — BEa Level Cross Popup — มาใน EA 1.20 / Global 1.15; ตัวที่สิบเอ็ด — Own Registry Popup — ใน EA 1.26 และตอนนี้มีอยู่เฉพาะในหน้าต่าง Inputs ของ EA เท่านั้น แผงแสดงสิบเซลล์) ตั้งแต่ EA 1.23 ถูกปิดไว้เป็นค่าเริ่มต้นโดยมีข้อยกเว้นหนึ่งเดียว: Own Registry Popup เปิดมาจากโรงงาน (เป็นข้อมูลล้วน ๆ — บทที่ 7.9) ป๊อปอัปที่เหลือคุณเปิดอย่างรู้ตัว เฉพาะตัวที่คุณอยากเห็น (จนถึงเวอร์ชัน 1.22 ทั้งหมดเปิดไว้เป็นค่าเริ่มต้น):
| เซลล์ | แจ้งเตือนเมื่อใด |
|---|---|
| Auto-Close Popup | ตัวพิทักษ์ (guardian) ปิด position โดยอัตโนมัติ — ป๊อปอัปบอกว่าเป็นตัวใด (Equity Guard / Profit Target / Basket Max Loss / Target Line) |
| Daily Limit Popup | ลิมิตกำไรหรือขาดทุนประจำวันทำงาน (Daily P/L, บทที่ 14) |
| Naked SL Popup | button เปิด virtual SL ไว้แต่ StopLoss=0 — การเปิดถูกบล็อก ป๊อปอัปอธิบายว่าเพราะอะไร |
| Instance Conflict Popup | EA instance อื่นใช้ Magic Number เดียวกันหรือทับซ้อนกัน (บทที่ 9) |
| BEa Armed Popup | หลังรีสตาร์ท EA แล้ว shield ของ BEa ยังคง armed อยู่ (บทที่ 12) |
| BEa Level Cross Popup | ระดับการปกป้องของ BEa ข้ามไปอยู่ฝั่งของ shield — basket ที่ถูกปกป้องต้องการให้ตลาดเดินสวนทางกับมันไกลขึ้นจึงจะถึงศูนย์ (บทที่ 12.6) |
| Protection Offline Popup | AutoTrading ปิดอยู่และการส่งคำสั่งเพื่อปกป้องถูกบล็อก — “PROTECTION OFFLINE” (บทที่ 21.6) |
| Broker Refusal Popup | Broker ปฏิเสธการเลื่อน SL หรือการปิด — รวมถึงการแจ้งเตือนเกี่ยวกับตัวที่ตกค้างและการลองใหม่ |
| Trigger Loop Popup | ตรวจพบ trigger loop ระหว่าง button และ cooldown เริ่มทำงาน (บทที่ 17) |
| Own Registry Popup (EA 1.26; เฉพาะหน้าต่าง EA Inputs — F7) | เหตุการณ์ของ own-registry (บทที่ 7.9): orphan ที่มีหลักฐานความเป็นเจ้าของ — ป๊อปอัปรายตัว; กรณีที่ไม่มีหลักฐาน — ป๊อปอัปรวมหนึ่งครั้งต่อเซสชัน; pending order ที่ถูกกวาดหลังรีสตาร์ท; คำเตือน MagicBase ≤ 0 — สวิตช์ตัวเดียวที่เปิดไว้เป็นค่าเริ่มต้น |
| Push Notifications | สวิตช์หลักของช่องทาง push ไปยังโทรศัพท์ (MetaQuotes ID) |
สามกฎที่ควรรู้:
- คุณปิดเสียงเฉพาะป๊อปอัป / push เท่านั้น สวิตช์แต่ละตัวปิดเฉพาะช่องทางป๊อปอัป/push ของกลุ่มตัวเอง — รายการใน Experts journal (log) ยังคงอยู่เสมอ ดังนั้นการวินิจฉัยจึงไม่มีวันตาบอด (บทที่ 21)
- การแจ้งเตือนเรื่องไลเซนส์ไม่มีสวิตช์ — โดยตั้งใจ คุณต้องเห็นเสมอว่าทำไม EA จึงไม่เทรด เพื่อให้ทนได้ ป๊อปอัปเกี่ยวกับปัญหาเดิมที่ยังคงค้างอยู่จะซ้ำอย่างมาก หนึ่งครั้งทุก 4 ชั่วโมง (บทที่ 3.7); บรรทัดใน journal ถูกเขียนทุกครั้งที่มีการพยายาม
- Push ต้องมี MetaQuotes ID ที่ตั้งค่าไว้ใน MT5 (Tools → Options → Notifications) หากไม่มี สวิตช์ที่เปิดอยู่ก็เพียงแค่ไม่ส่งอะไรเลย
อธิบายเป็นความเรียงเกี่ยวกับสวิตช์ตัวที่สิบ: BEa Level Cross Popup แจ้งเตือน เฉพาะ เมื่อระดับการปกป้องของ shield BEa ข้ามไปอยู่ฝั่งของ add-on position — สำหรับ basket SELL เป้าหมายจะไปอยู่ เหนือ ราคา สำหรับ basket BUY จะอยู่ ใต้ ราคา ซึ่งหมายความว่า basket ที่ถูกปกป้องตอนนี้ต้องการให้ตลาดเดิน สวนทางกับมันไกลขึ้น สถานะ “locked” (lot เท่ากัน — ไม่มีเป้าหมายและไม่มีเส้น) ถูกจงใจให้บันทึกเฉพาะใน log เท่านั้น: เมื่อใช้ equalizing shield มันเกิดขึ้นทุกครั้งที่ arm และการแจ้งเตือนมันจะกลบกรณีที่อันตรายจริง ๆ (บทที่ 12.6)
อธิบายเป็นความเรียงเกี่ยวกับสวิตช์ตัวที่สิบเอ็ด: Own Registry Popup (Global_AlertOwnRegistry ตั้งแต่ EA 1.26) คือ อเลิร์ตตัวเดียวที่เปิดใช้งานมาจากโรงงาน — เป็นข้อมูลล้วนๆ ไม่เคยเปลี่ยนแปลงการเทรด (ถูกปิดเสียงในเทสเตอร์) ครอบคลุมเหตุการณ์ของ registry ความเป็นเจ้าของโพซิชัน: orphan ที่มีหลักฐานความเป็นเจ้าของจะได้ popup แยกรายตัว ส่วนกรณีที่ไม่มีหลักฐานจะถูกรวบเป็น popup สรุปหนึ่งครั้งต่อเซสชัน บวกกับข้อความเกี่ยวกับ Pending Order ที่ถูกกวาดทิ้งหลังการรีสตาร์ท และคำเตือน MagicBase ≤ 0 สวิตช์นี้ ไม่มีเซลล์ในแผง Global 1.18 — คุณตั้งค่าได้เฉพาะในหน้าต่าง Inputs ของ EA (F7) เท่านั้น ไฟล์ .set ที่บันทึกจากแผงไม่มีคีย์นี้อยู่ ดังนั้นการโหลดผ่าน F7 จึงคงค่าเริ่มต้นไว้ (เปิดใช้งาน) การปิดใช้งาน (Global_AlertOwnRegistry=false) จะดับเฉพาะ popup เท่านั้น — รายการใน Experts journal ยังคงอยู่ รายละเอียดและตัวป้องกันการถล่มข้อความ — บทที่ 7.9
เช่นเดียวกับทุกเซกชันของ Global — คุณส่งออกการตั้งค่าผ่าน .set (คีย์ Global_Alert…) และโหลดเข้า EA ผ่าน F7 กลุ่ม “Alerts” กลุ่มเดียวกันนี้อยู่ในหน้าต่าง Inputs ของ EA โดยตรง
5.6 Apply (N) — ตัวนับการเปลี่ยนแปลงและการยืนยันค่า
OkurraGlobal — เช่นเดียวกับ OkurraButton — แยก draft (การแก้ไขปัจจุบันของคุณ) ออกจาก applied (สถานะที่ยืนยันแล้ว ซึ่ง companion indicators อ่านค่าจากตรงนั้นและเป็นสิ่งที่คุณส่งออก) Apply ย้าย draft → applied
สิ่งที่ OkurraGlobal เพิ่มเข้ามาคือ ตัวนับการเปลี่ยนแปลงบนปุ่ม Apply โดยตรง เมื่อคุณมีการแก้ไขที่ยังไม่ยืนยัน ปุ่มจะแสดง Apply (N) โดย N คือจำนวนช่องที่รอการยืนยัน เมื่อยืนยันทุกอย่างแล้ว ปุ่มจะแสดงเพียง Apply สิ่งนี้ทำให้คุณเห็นได้ทันทีว่ามีการเปลี่ยนแปลง กี่รายการ ที่ค้างอยู่ใน draft — ช่วยได้มากเมื่อมีเซกชันจำนวนมาก ซึ่งง่ายที่จะลืมว่ามีบางอย่างเปลี่ยนไปตรงไหนสักแห่ง
ในเลย์เอาต์แนวตั้ง เซกชันต่างๆ ยังมี ปุ่ม “A” เพิ่มเติม — นี่คือทางลัดไปยัง Apply แบบเต็ม ตัวเดียวกัน: การคลิก “A” ข้างเซกชันใดก็ได้จะยืนยัน ทั้งแผง (ทุกเซกชันพร้อมกัน) เหมือนกับปุ่ม Apply หลักทุกประการ ปุ่ม “A” ไม่แสดงตัวนับและไม่ยืนยันแบบเลือกเฉพาะส่วน — มันมีอยู่เพื่อให้คุณไม่ต้องเลื่อนกลับไปที่ปุ่มหลักเมื่อแผงยาวและถูกเลื่อนลงไปแล้ว
สิ่งที่ Apply ทำ (โมเดลแบบแมนวล บทที่ 2.7) เหมือนกับใน OkurraButton ทุกประการ:
- Draft → applied (บันทึกลงสถานะภายใน
Global_applied.ini) - สำเนาที่บันทึกอัตโนมัติไปยังประวัติ (
OKU/history/auto_Global_<timestamp>.ini) — แบ็กอัปแบบหมุนเวียน - การรีเฟรช global companion indicators บนชาร์ต
และเช่นเดียวกับใน OkurraButton: Apply ไม่ส่งอะไรไปยัง EA เลย เพื่อให้คอนฟิกไปถึงตัวโรบ็อต — Save .set + F7 (ส่วน 5.7)
ปุ่ม R (Reset) ล้างสถานะ global ที่ apply ไว้ (มีตัวป้องกันการคลิกโดยไม่ตั้งใจ) โดยไม่แตะต้องประวัติ — เทียบเท่ากับ Reset ใน OkurraButton
5.7 Save / Load .set — setup เต็มของ EA ทั้งตัว
นี่คือจุดที่ OkurraGlobal ต่างจาก OkurraButton ในเชิงฟังก์ชัน และเป็นเหตุผลที่มันมักถูกเรียกว่า “แผงหลักสำหรับการส่งออก”
Save — การบันทึก setup เต็ม การคลิก Save ใน OkurraGlobal บันทึกลง .set เป็น คอนฟิกครบถ้วนของ EA ทั้งตัว:
- เซกชัน global (การตั้งค่าทั้งหมดจาก 32 เซกชันของแผงนี้)
- บวกกับพารามิเตอร์ของทั้งห้า button (B1…B5)
นี่คือไฟล์ที่พร้อมโหลดเข้าโรบ็อต “ตามที่เป็น” — ทุกอย่างอยู่ในนั้น หลังจากคลิก Save จะมีไดอะล็อกบันทึกเล็กๆ เปิดขึ้นพร้อมช่องใส่ชื่อ — คุณตั้งชื่อไฟล์ได้ตรงนั้นเลย ในไดอะล็อก (มีชื่อเริ่มต้น Global_<timestamp>.set แนะนำให้; ยืนยันด้วย “V” ยกเลิกด้วย “X”) ไฟล์จะไปอยู่ในไดเรกทอรี OKU/sets/ และเปลี่ยนชื่อภายหลังได้ในไดอะล็อก Load (บทที่ 7.2)
เปรียบเทียบกับ OkurraButton Save ใน OkurraButton บันทึกเฉพาะ button (B1…B5) โดยไม่มีเซกชัน global ส่วน Save ใน OkurraGlobal บันทึกทั้งหมด (global + buttons) หากคุณกำลังออกแบบ setup เต็มและต้องการไฟล์เดียวสำหรับ EA — ให้บันทึกจาก OkurraGlobal การเปรียบเทียบโดยละเอียดของ
.setทั้งสองชนิด — บทที่ 2.4 และคำอธิบายเต็มเรื่องการย้ายคอนฟิก — บทที่ 7
Load — การโหลด .set เปิดตัวเรียกดูไฟล์ .set ใน OKU/sets/ คุณเลือกไฟล์ แผงจะโหลดเซกชัน global จากไฟล์นั้น (และ — ผ่าน cross-sync — ส่งส่วนของ OkurraButton ให้มัน) ในไดอะล็อก Load คุณยังเปลี่ยนชื่อไฟล์ที่บันทึกไว้ได้ด้วย
5.8 Global companion indicators
OkurraGlobal ดึง เวอร์ชัน global ของ companion indicators เข้ามา — แสดงฟิลเตอร์ global บนชาร์ต นั่นคือตัวที่ button เสียบเข้าใช้ผ่าน opt-in:
- การโหลดอัตโนมัติของ global SAR — วางทับด้วยอินดิเคเตอร์ OkurraGlobalSAR (จุด SAR แบบ global)
- การโหลดอัตโนมัติของ global MMD — วางทับด้วย OkurraGlobalMMD (clouds ของ MMD แบบ global)
- การโหลดอัตโนมัติของ global SR — วางทับด้วย OkurraGlobalSR (โซน SR แบบ global)
- การโหลดอัตโนมัติของ global OKUR — วางทับด้วย OkurraGlobalOscillator (Global OKUR Filter ในหน้าต่างแยก)
- การถอดอินดิเคเตอร์อัตโนมัติ — ลบเลเยอร์ทับเหล่านี้ออกเมื่อคุณถอด OkurraGlobal ออกจากชาร์ต
สวิตช์ทั้งห้าตัว เปิดใช้งานโดยค่าเริ่มต้น — หลังจากวาง OkurraGlobal ลงบนชาร์ต ชุดเลเยอร์ทับแบบ global ทั้งหมดจะดึงตัวเองเข้ามา และเมื่อถอดแผงออก มันก็จะหายไปพร้อมกัน
อินดิเคเตอร์เหล่านี้แสดง บริบท global — ไม่ว่า button ตัวใดจะแอ็กทีฟอยู่ใน OkurraButton ก็ตาม ด้วยเหตุนี้ ขณะที่คุณออกแบบฟิลเตอร์ global คุณจะเห็นบนชาร์ตทันทีว่ามันตกอยู่ตรงไหน และปรับจูนให้เข้ากับกลยุทธ์ที่จะเสียบเข้ามาใช้ได้ คำอธิบายเต็มของ companion indicators (ทั้งแบบ local และ global) — บทที่ 6
สถานะศูนย์ แม้ว่าการโหลดอัตโนมัติจะเปิดไว้โดยค่าเริ่มต้น แต่เลเยอร์ทับแบบ global ตัวหนึ่งๆ จะปรากฏ ก็ต่อเมื่อ คุณเปิด “Show … On Chart” ให้มันเท่านั้น (หลัง Apply) หากไม่ทำ OkurraGlobal จะไม่วาดมันเลย — ชาร์ตใหม่จะยังคงว่างเปล่า (บทที่ 6.6)
5.9 Cross-sync กับ OkurraButton
เมื่อทั้งสองแผงอยู่บนชาร์ตเดียวกัน จะมีการซิงโครไนซ์ระหว่างกันตอนโหลด .set (กลไกอธิบายไว้ในบทที่ 2.5):
- คุณโหลด
.setใน OkurraGlobal → OkurraGlobal โหลดเซกชัน global ส่วน OkurraButton (ถ้ามีอยู่) โหลดพารามิเตอร์ B1…B5 จากไฟล์เดียวกัน - คุณโหลด
.setใน OkurraButton → OkurraButton โหลด button ต่างๆ ส่วน OkurraGlobal โหลดเซกชัน global
การโหลดไฟล์ครั้งเดียวจึงรีเฟรชทั้งสองแผง — คุณไม่ต้องโหลดคอนฟิกเดียวกันสองครั้ง การซิงโครไนซ์นี้เป็นเรื่องเฉพาะของชาร์ต และ — ควรย้ำอีกครั้ง — ไม่แตะต้อง EA เพื่อให้การเปลี่ยนแปลงไปถึงโรบ็อต คุณต้องบันทึก .set แล้วโหลดเข้าใน EA ผ่าน F7
5.10 วงจรการออกแบบโดยทั่วไปสำหรับการตั้งค่า global
จังหวะการทำงานกับ OkurraGlobal เป็นฝาแฝดของวงจรกับ OkurraButton (บทที่ 4.12) เพียงแต่เกี่ยวข้องกับกรอบที่กลยุทธ์ต่างๆ ทำงานอยู่ภายใน:
- วาง OkurraGlobal ลงบนชาร์ตออกแบบ (ควรวางข้าง OkurraButton โดยไม่มี EA) global companion indicators จะดึงตัวเองเข้ามาเอง
- เลือกเลย์เอาต์ — แนวตั้งหรือแนวนอน (ส่วน 5.4) — ขึ้นอยู่กับว่าคุณทำงานแบบไหนได้สะดวก
- ออกแบบการตั้งค่า ในตระกูลเซกชัน (ส่วน 5.5): เริ่มจากสิ่งที่คุณต้องการเปิดใช้จริงๆ — เช่น ฟิลเตอร์ global ถ้าจะให้ button ใช้งานมัน และ guardians ของบัญชี ถ้าคุณต้องการลิมิต ที่เหลือปล่อยไว้ที่ค่าเริ่มต้นที่สมเหตุสมผล
- Apply สังเกตตัวนับ
Apply (N)— เมื่อมันกลับไปเป็นApplyแปลว่ายืนยันทุกอย่างแล้ว global companion indicators จะวาดใหม่ตามคอนฟิกใหม่ - มองที่ชาร์ต ฟิลเตอร์ global ตกอยู่ตรงจุดที่คุณต้องการให้มันกรองสัญญาณของ button หรือไม่ แก้ไขแล้วยืนยันอีกครั้ง
- เมื่อทุกอย่างพร้อม — คลิก Save เพื่อบันทึก
.setแบบเต็ม (global + button ทั้งหมด) นี่คือไฟล์ที่คุณจะโหลดเข้า EA (บทที่ 7)
โดยปกติคุณจะออกแบบในทั้งสองแผงคู่ขนานกัน: button ใน OkurraButton กรอบการทำงานใน OkurraGlobal และในตอนท้ายบันทึกทั้งหมดด้วย Save ครั้งเดียวจาก OkurraGlobal ความอดทนและการเฝ้าสังเกต companion indicators — ที่นี่ เช่นเดียวกับทุกที่ในโหมดออกแบบ — คือเครื่องมือหลัก
เท่านี้ก็จบคู่ของแผงออกแบบ ในบทถัดไปเราจะดู companion indicators — เครื่องมือแสดงผลแปดตัวที่แสดงบนชาร์ตว่าฟิลเตอร์และออสซิลเลเตอร์เห็นอะไร: อ่านมันอย่างไร ใช้เมื่อไร และมันทำงานร่วมกับแผงต่างๆ และกับ EA อย่างไร