วิธีใช้บล็อค Bucket of Position & Orders

Bucket of Position & Orders
กลับสู่สารบัญเพื่อเลือกเรียนบทอื่น ๆ

ก่อนอื่นเลยครับอย่าเพิ่งตกใจว่าเอ๊ะ ทำไมของผมมันชื่อ Bucket of Trade & Order น้า ??? คืองี้ครับ 5555 ถ้าเราทำ Project แบบ MT5 เค้าจะใช้คำว่า Position แทนคำว่า Trade ครับ เช่น No Trade กลายเป็น To Position แบบนี้นั่นเองครับ พูดง่าย ๆ แบบนี้ครับ

  • Trade -> MT4
  • Position -> MT5

ผมขอเกริ่นเลยละกันครับ Bucket หรือเรียกสั้น ๆ ง่าย ๆ ว่า “ถัง” เนี่ย เป็นบล็อกที่ใช้เก็บข้อมูลของหลาย ๆ ไม้ในคราวเดียวครับ และแน่นอนว่าเราสามารถดึงข้อมูลนั้นมาใช้งานต่อได้อีกด้วย เช่น ผมอาจจะเก็บข้อมูลของไม้ Buy Group 1 EURUSD เอาไว้ใน Bucket ผมก็จะสามารถดึงข้อมูลของไม้ Buy Group 1 EURUSD มาใช้งานได้นั่นเองครับ

Bucket of Position & Order
รูปที่ 1 แสดงให้เห็นถึง Bucket of Position & Order

ทำความรู้จักกับ Parameter ของ Bucket of Position & Order กัน

parameter Bucket
รูปที่ 2 แสดงให้เห็นถึงค่าพารามิเตอร์ที่มีของ Bucket ทุกบล็อก

Bucket ID

ตัวนี้อารมณ์เดียวกับ Group เลยครับ ซึ่งเราใช้ในการแบ่งว่า Bucket นี้ที่เก็บข้อมูลนี้ไว้คือ Bucket สีไหน ซึ่งเวลาเราจะดึงข้อมูลเนี่ย เราก็จะชี้ไปที่สีของถังเพื่อดึงข้อมูลนั่นเองครับ (ไม่งั้นเค้าไม่รู้ครับ ว่าเราหมายถึง Bucket ไหน)

และถ้าสมมติเนี่ยเราเราใช้ Bucket จนสีไม่พอให้เราเลือกแล้ว เราก็สามารถกำหนดสีของถังให้เป็น Variable ได้เลยครับ โดยกำหนดให้เป็นเลขก็ได้ครับ เช่น 1 2 3 เพราะว่าเหตุผลจริง ๆ แล้วคือการใช้แบ่ง Bucket ให้แยกออกจากกันนั่นเองครับ

Group Mode

สำหรับ Group Mode มีให้เราเลือกกลุ่มการทำงาน 3 แบบซึ่งขอสรุปง่าย ๆ ตามตารางด้านล่างนี้ครับ

ชื่อพารามิเตอร์

คำอธิบาย

Group เลือกกลุ่มการทำงาน แบ่งโดยใช้เลข Group เช่น 1
Manually opened เลือกไม้ที่เปิดด้วยแบบแมนนวล หรือเปิดด้วยมือของตัวเอง (ไม่ใช้ EA เท่านั้น)
All (automate and manually opened) เลือกทุกไม้ ไม่ได้สนว่าจะเป็นไม้ที่เปิดด้วยมือหรือ EA และไม่ได้สนว่าเป็น Group ไหนด้วย

Group #

เอาไว้ใส่เลขกลุ่มการทำงานที่ต้องการ เช่น 1 หรือจะใส่หลายกลุ่มการทำงานก็ได้ โดยจะใช้ comma ในการเขียน Group ต่อกัน เช่น 1, 2, 3           

Symbol Mode

ในส่วนของ Symbol Mode จะมีให้เราเลือกกลุ่มการทำงาน 2 แบบ ดังนี้ครับ

  • Specified: เลือก Symbol แบบเฉพาะเจาะจง แต่ก็สามารถใส่หลาย Symbol ได้เช่นกันครับ เช่น ใส่แบบตัวเดียว EURUSD หรือใส่แบบหลายตัว EURUSD, USDJPY, GBPUSD โดยเราจะสังเกตได้ว่าเค้าจะใช้คอมม่าในการแบ่งชื่อ Symbol แต่ละตัวครับ
  • Any Symbol: หรือพูดง่าย ๆ ก็คือ Symbol ไหนก็ได้ เค้าไม่ได้สนใจ Symbol ครับ

บล็อก Bucket ทั้ง 3 ประเภท

บล็อก Bucket ไม่ว่าจะเป็นการเขียน EA สำหรับ mt4 ก็ดี mt5 ก็ดี จะมีอยู่เพียง 3 ประเภทเท่านั้นครับ

  1. Bucket of Position
  2. Bucket of Pending Order
  3. และ Bucket of Closed Positions
Bucket 3 ประเภท
รูปที่ 3 แสดงให้เห็นถึงบล็อก Bucket ว่ามีทั้งหมด 3 บล็อกด้วยกัน

1. Bucket of Position

เป็น Bucket ที่ใช้เก็บข้อมูลของไม้เทรดที่กำลังเปิดอยู่ได้เท่านั้นครับ (Buy Sell ปกติ ที่ไม่ใช่ Pending Order)

Bucket of Position
รูปที่ 4 แสดงให้เห็นถึงหน้าต่างของบล็อก Bucket of Position

เพราะฉะนั้นนั่นก็หมายความว่า เวลาเราใช้ Bucket เราต้องใช้ให้ถูกกับไม้ที่เรากำลังจะดึงข้อมูลด้วยครับ ไม่งั้นเราจะดึงข้อมูลไม่ได้ หรือดึงข้อมูลไม่เจอนั่นเองครับ

2. Bucket of Pending Orders

เป็น Bucket ที่ใช้เก็บข้อมูลของไม้เพนดิ้งออเดอร์ที่เราเปิดอยู่ ณ ขณะนี้ครับ

Bucket of Pending Orders
รูปที่ 5 แสดงให้เห็นถึงหน้าต่างของบล็อก Bucket of Pending Orders

3. Bucket of Closed Positions

เป็น Bucket ที่ใช้เก็บข้อมูลของไม้เทรดที่ปิดไปแล้วครับ

Bucket of Closed Positions
รูปที่ 6 แสดงให้เห็นถึงหน้าต่างของบล็อก Bucket of Closed Positions

Only trades after & before

บล็อกนี้เค้าจะพิเศษกว่าชาวบ้านหน่อยครับ 5555 ตรงที่ว่าอันนี้เราจะเลือกกรองได้อีกชั้นนึงครับ ว่าเราเนี่ยจะเอาไม้ที่ปิดก่อนเวลานี้มั้ย (before) หรือจะเอาไม้เฉพาะที่ปิดหลังเวลานี้เท่านั้น (after) ซึ่งตรงนี้เราก็สามารถปรับแต่ง และเล่นลูกเล่นได้ตามใจชอบเลยครับ

ยกตัวอย่างเช่น ผมอยากได้ข้อมูลไม้ที่ปิดไปแล้วหลัง 1 วัน ก่อนหน้าเท่านั้น ผมสามารถตั้ง Bucket แบบนี้ได้เลยครับ

Bucket after
รูปที่ 7 แสดงถึงการตั้ง Bucket ให้เก็บข้อมูลหลังจาก 00.00 ในวันก่อนหน้าเป็นต้นไป เท่านั้น (after)

ซึ่งเราจะสังเกตได้ว่าผมมีการ Shift Back ไป 1 วันด้วยกันครับ โดย

  • Shift Back คือ การถอยเวลากลับ
  • Shift Forward คือ การดันเวลาไปข้างหน้า

Concept ตรงนี้จะเป็นแบบเดียวกันกับ Candle ID เลยครับ ที่เมื่อเราอยากได้แท่งเทียนก่อนหน้า เราจะใส่ Candle ID เป็น 1

Not more than trades

หรือพูดง่าย ๆ ก็คือ ท่านจะเอาค่าของไม้ใน Bucket of Closed Position ไม่เกินกี่ไม้นั่นเองครับ

ค่าที่มีให้เราดึงใน Bucket ทั้งหมด

ผมจะขอเริ่มต้นที่ Attribute นะครับ

Bucket fxdreema
รูปที่ 8 แสดงให้เห็นถึงการเลือกค่าของ Bucket ได้หลายอย่างว่าเราต้องการเลือกอะไร

Attribute

ชื่อพารามิเตอร์

คำอธิบาย

Count จำนวนไม้ใน Bucket
Profit กำไรใน Bucket
Lot ค่าล็อตใน Bucket
Lot (initial) แอดลองไปเทสดูแล้วครับ ตัวนี้ไม่เห็นต่างจากตัวข้างบนเลยครับ เอาเป็นว่าตอนนี้ใช้ตัว Lot กันเป็นหลักกันไปก่อนดีกว่าครับ🤣
Stop-Loss ค่า SL ของไม้ใน Bucket
Take-Profit ค่า TP ของไม้ใน Bucket
Price Open ค่าราคาเปิดของไม้ใน Bucket
Price Close ค่าราคาปิดของไม้ใน Bucket

ในตัวของ Price Close ผมเองก็ได้ลองแบบ Total Sum ดูครับ ปรากฏว่าถ้าท่านใช้ Bucket of Position (ตัวเดียวกันกับ Bucket of Trades) ในการดึง ค่าตรงนี้ท่านจะได้เป็นราคาปัจจุบันมาบวกกันครับ

Price Close และ Price Open
รูปที่ 9 แสดงการทดลองว่าตัว Price Close และ Price Open คืออะไร โดยการลองนำไป Total Sum

Value to get

หรือพูดง่าย ๆ ก็คือ เราจะเอาค่าอะไรนั่นเองครับ เช่น Attribute = Count (จำนวนไม้ใน Bucket) และเราเลือก Value to get = Total Sum เราก็จำได้เป็นจำนวนไม้รวมทุกไม้ใน Bucket นั่นเองค้าบ

ชื่อพารามิเตอร์

คำอธิบาย

Average value ค่าเฉลี่ยของ Attribute ที่เราเลือก
Max. value ค่าที่มากที่สุดของ Attribute ที่เราเลือก
Min. value ค่าที่น้อยที่สุดของ Attribute ที่เราเลือก
Total sum ค่าผลรวมของ Attribute ที่เราเลือก
Loop หรือ Bucket ?
รูปที่ 10 คุณจะเลือกใช้ Loop หรือ Bucket ?

สรุป

ดึงค่าแค่ไม้เดียว หรือไม่กี่ไม้ แบบเอาเจาะจง = ใช้ Loop For Each ตอบโจทย์กว่าครับ.. ดึงค่าหลายไม้พร้อมกัน ไม่หนักเครื่อง = ใช้ Bucket ครับ เฟี้ยวกว่าเยอะ เช่น สมมติว่าผมเนี่ยต้องการเก็บค่า Lot ของไม้ 100 ไม้ บล็อคที่ผมควรใช้เก็บค่า Lot ในที่นี้ ผมควรใช้เป็น Bucket ครับ เพราะว่าจะทำให้ไม่หนักเครื่อง และคำนวณได้เร็วนั่นเองค้าบ

กลับสู่สารบัญเพื่อเลือกเรียนบทอื่น ๆ

ใส่ความเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *