สารบัญบทความ
- หลักฐานและขอบเขต
- ภาพประกอบ
- กระบวนการ
- ประเภทอ้างอิงสามแบบที่มีข้อมูลแตกต่างกัน
- ตัวระบุเซสชันและเวลาประทับการมีสิทธิ์
- ปริมาณพร้อมกันและการจัดการการประมูลเปิด
- ตัวอย่างสมมติของกรอบเปิดตลาด
- แยกช่วงอายุของระดับและธุรกรรมออกจากกัน
- แยกผลของระดับราคาออกจากผลของเวลาภายในวัน
- ข้อผิดพลาดที่พบบ่อย
- รายการตรวจสอบเชิงปฏิบัติ
- คำถามที่พบบ่อย
- แหล่งวิจัย
หลักฐานและขอบเขต
ตัวบ่งชี้แหล่งที่มาอธิบายถึงการกวาดล้างเซสชันที่กำหนดค่าได้ เอกสารแพลตฟอร์มและการแลกเปลี่ยนกำหนดกลไกของเซสชัน ไม่มีการตรวจสอบข้ออ้างเรื่องผลกำไรสำหรับตัวตรวจจับที่เสนอ
ขั้นตอนปฏิบัติ
- กำหนดเซสชันเลือกตลาดซื้อขาย ปฏิทิน และเขตเวลา
- รอช่วงอ้างอิงให้จบเผยแพร่เฉพาะค่าสูงสุดและต่ำสุดของช่วงก่อนหน้าหรือช่วงเปิดตลาดเมื่อทราบเท่านั้น
- ตรวจจับการกวาดล้างครั้งถัดไปใช้บัฟเฟอร์คงที่และเวอร์ชันระดับที่เหมาะสม
- ยืนยันและส่งใช้เวลาที่รับราคาปิดจริงและแบบคำสั่งที่เลือก
- ประเมินตามประเภทของเซสชันรวมถึงวันที่ไม่มีสัญญาณ ช่องว่าง และกรณีพิเศษของปฏิทินด้วย
ประเภทอ้างอิงสามแบบที่มีข้อมูลแตกต่างกัน
PDH/PDLคือจุดสูงสุดและต่ำสุดของวันซื้อขายก่อนหน้าที่จบแล้ว PSH/PSLคือจุดสูงสุดและต่ำสุดของเซสชันที่เลือกและจบแล้ว ส่วนORH/ORLคือจุดสูงสุดและต่ำสุดในNนาทีแรกของเซสชันปัจจุบัน ระดับอาจตรงกันแต่ไม่ได้กลายเป็นหลักฐานอิสระ หากเหมาะสมให้เก็บระดับอ้างอิงเดียวพร้อมป้ายกำกับที่เกี่ยวข้อง
ฟังก์ชัน Session Sweeps ของ LuxAlgo อนุญาตให้เลือกเซสชัน [1] การใช้งานแบบอิสระต้องการเขตเวลาและปฏิทินของตลาดหลักทรัพย์ [2][3] แทนที่จะใช้เวลาท้องถิ่นคงที่ตลอดทั้งปี ลอนดอน นิวยอร์ก และคอมพิวเตอร์ที่ใช้กลยุทธ์นี้อาจไม่เปลี่ยนเวลาในวันเดียวกัน
ระดับของวันก่อนหน้าแสดงถึงช่วงราคาเก่า ในขณะที่ช่วงราคาเปิดแสดงถึงจุดเริ่มต้นของวันใหม่ ช่องว่างขนาดใหญ่อาจทำให้ราคาทะลุผ่านช่วงราคาก่อนหน้าทั้งหมด ณ เวลาเปิดตลาด การกลับมาที่ระดับ PDH ไม่ได้หมายความว่าจะเป็นการกวาดล้างเสมอไป ให้ระบุด้านเริ่มต้นของระดับและพิจารณาว่าตัวกระตุ้นที่ต้องการคือการปฏิเสธ การกลับคืน หรือการทดสอบการทะลุแนวต้านอีกครั้ง
ตัวระบุเซสชันและเวลาประทับการมีสิทธิ์
โครงสร้าง session_id ที่เสนอมานั้นประกอบด้วยสถานที่ซื้อขาย สัญลักษณ์ calendar_date และ session_template_version ฐานข้อมูลหุ้นสหรัฐฯ สามารถใช้ช่วงเวลาซื้อขายหลักและจัดเก็บข้อมูลก่อนเปิดตลาดแยกต่างหาก ระบุช่วงเวลาที่สั้นลงแทนที่จะสร้างแท่งเทียนที่หายไปเพื่อให้ได้รูปแบบ 24 ที่มีชั่วโมงซื้อขายสม่ำเสมอ สัญญาซื้อขายล่วงหน้าข้ามคืนสามารถมีวันที่ซื้อขายแตกต่างจากวันที่ในปฏิทินท้องถิ่นได้
กรอบเปิด09:30ถึง09:45ใช้แท่งห้านาทีที่เริ่ม09:30, 09:35, 09:40 เผยแพร่ระดับสุดท้ายได้หลัง09:45 แท่ง09:40ที่ยังไม่ปิดบอกจุดต่ำสุดORสุดท้ายไม่ได้ ช่วงครึ่งเปิด[start,end)รวมจุดเริ่มแต่ไม่รวมจุดสิ้นสุด จึงไม่ให้เหตุการณ์ตรงขอบถูกนับในทั้งสองหน้าต่าง
หลังจากมีการเผยแพร่แนวรับ S แล้ว การกวาดขาลงที่เสนอต้องอาศัยการปิดเหนือ S ก่อนหน้า low<S−b และ close>S+e ใช้ b=max(2 ticks,0.10ATR) และ e=max(2 ticks,0.15ATR) โดยใช้ ATR จากแท่งเทียนก่อนการกระตุ้น การเรียกคืน K=3 แบบหลายแท่งเทียนเป็นเวอร์ชันแยกต่างหาก N, K และบัฟเฟอร์ทั้งหมดเป็นตัวเลือกในการวิจัย ไม่ใช่การตั้งค่าที่ทำกำไรได้แน่นอน
บันทึกwindow_endและเวลาที่ได้รับข้อมูลระดับที่เผยแพร่จริง หากข้อมูลแก้ไขช่วงสุดท้ายมาช้า ห้ามย้อนหลังอนุญาตจุดเข้าก่อนหน้า กำหนดว่าจะแก้เฉพาะผู้สมัครในอนาคตหรือยกเลิกช่วงวิจัยที่กระทบ และเก็บบันทึกตัดสินใจเดิม
on_trade_received(trade):
window = configured_half_open_window(trade.event_time)
if window.start <= trade.event_time < window.end:
update_extrema_for_that_window_only(window,trade)
on_window_data_ready(window,received_at):
if not window_complete_under_declared_watermark_policy: return
if window.current_fingerprint == window.last_published_fingerprint: return
available_at = max(window.end,received_at) + processing_delay
publish_frozen_version(window.extrema,available_at=available_at)
window.last_published_fingerprint = window.current_fingerprint
for closed_bar in later_bars:
levels = versions_available_before(closed_bar.start)
detect_sweep(levels,closed_bar)
# Publish once per data version; boundary trades belong to the following window.
# Late corrections publish a future version and never backdate an order.
ปริมาณพร้อมกันและการจัดการการประมูลเปิด
เปรียบเทียบปริมาณการซื้อขายในช่วงเวลาที่กำหนดกับช่วงเวลาที่ตรงกันในรอบการซื้อขายก่อนหน้า กรณีที่ช่วงเวลาที่ขาดหายไปหรือวันที่สั้นลงจะต้องมีการยกเว้นอย่างชัดเจน ฟีดข้อมูลที่แสดงปริมาณการประมูลในแท่งแรกไม่ควรนำมาเปรียบเทียบโดยตรงกับประวัติการซื้อขายที่ลบข้อมูลเหล่านั้นออกไป
การกวาด RVOL และตำแหน่งที่สัมพันธ์กับ VWAP ปัจจุบันเป็นคุณสมบัติที่เสนอแยกต่างหาก การตัดสินใจในตอนเช้าไม่สามารถใช้ VWAP ณ สิ้นวันได้ การกวาด PDL ในขณะที่ซื้อขายต่ำกว่า VWAP อาจสะท้อนถึงการเคลื่อนไหวลงเพียงครั้งเดียว ดังนั้นควรวัดค่าที่เพิ่มขึ้นของแต่ละตัวกรองแทนที่จะนับจำนวนการยืนยันเพียงอย่างเดียว
สัญญาณก่อนและหลังประกาศตามกำหนดอาจจับคู่คำสั่งได้ต่างกัน ใช้ปฏิทินที่รู้ล่วงหน้ากำหนดช่วงเหล่านี้ การเรียกวันหนึ่งว่าข่าวร้ายหลังเห็นราคาตอบสนองเป็นการใช้ข้อมูลย้อนหลัง แยกเวลาประกาศออกจากเวลาที่ได้รับข้อมูลหรือข่าวจริง
ตัวอย่างสมมติของกรอบเปิดตลาด
สมมติว่ากราฟตั้งใจให้มี OR15 high=205 และ low=200 แต่ที่ 09:43 ราคากลับเคลื่อนตัวไปที่ 199.80 แล้วฟื้นตัว คุณไม่สามารถเทรดตามจุดต่ำสุดสุดท้ายที่คาดการณ์ไว้ที่ 200 ได้ เพราะช่วงราคาเปิดยังคงก่อตัวอยู่ ถ้า 199.80 เป็นข้อมูลที่ถูกต้องในหน้าต่างนั้น จุดต่ำสุดสุดท้ายของ OR จะต้องรวมจุดนี้ด้วย
ในอีกตัวอย่างหนึ่ง ช่วงราคาเปิดได้สิ้นสุดลงแล้วที่ low=200 แท่งเทียน 09:50 ในเวลาต่อมามี low=199.60 และ close=200.40 หากค่าบัฟเฟอร์ขั้นต่ำตามขนาด tick ไม่ได้เป็นตัวกำหนดค่าที่สูงกว่า ATR=1 จากแท่งก่อนหน้าจะให้ b=0.10 และ e=0.15 ดังนั้นการกลับมายืนเหนือระดับจึงเข้าเกณฑ์ การเข้าซื้อหลังปิดที่ 200.45 จุดหยุดขาดทุนที่ 199.50 และเป้าหมายที่ 202.35 มีความเสี่ยง 0.95 และผลตอบแทน 1.90 เป้าหมายถูกกำหนดไว้ที่จุดเข้าซื้อแทนที่จะเลือกจากราคาสูงสุดรายวันในที่สุด
เส้นทางขาดทุนลงถึง199.45 และคำสั่งป้องกันจับคู่199.48 ทำให้ขาดทุน0.97 อีกแท่งที่ปิด199.70และยืนใต้ORLเป็นตัวเปรียบเทียบการทะลุลงแล้วยอมรับราคาด้านล่าง ไม่ใช่จุดเข้ากลับตัว เมื่อเปลี่ยนวันปฏิทิน ห้ามแทนสต็อปของรายการเดิมด้วยPDLที่คำนวณใหม่
แยกช่วงอายุของระดับและธุรกรรมออกจากกัน
การอ้างอิงอาจหมดอายุเมื่อปิดเซสชั่น ในขณะที่การซื้อขายที่เปิดอยู่แล้วจะปฏิบัติตามนโยบายการปิดของตัวเอง สำหรับผู้สมัครที่รออยู่ ฐานที่เสนอจะใช้เพียงการกวาดที่เข้าเกณฑ์ครั้งแรกต่อ level_id ต่อเซสชั่นเท่านั้น ทดสอบการสัมผัสในภายหลังแยกต่างหากเพื่อพิจารณาว่าผลลัพธ์กระจุกตัวอยู่ในการเข้าถึงครั้งแรกหรือไม่
ถ้าจุดเข้าต้องทะลุจุดสูงสุดของแท่งที่กลับยืนเหนือระดับ คำสั่งซื้อแบบสต็อปจะวางได้หลังแท่งนั้นปิดเท่านั้น หากแท่งถัดไปกระตุ้นเข้าแล้วโดนสต็อป รายการนั้นยังต้องนับ แม้ราคาปิดสุดท้ายดูไม่ดี แท่งที่กวาดทั้งขอบบนและล่างต้องใช้ข้อมูลภายในแท่งหรือระบุว่าลำดับเหตุการณ์ไม่พอ
บันทึก UTC, เขตเวลาของตลาดหลักทรัพย์, เวลาเหตุการณ์ดั้งเดิม และเวลาการรับในท้องถิ่น ในการเปลี่ยนสัญญาซื้อขายล่วงหน้า ห้ามเปรียบเทียบราคาของสัญญาใหม่ที่ยังไม่ได้ปรับปรุงกับระดับราคาของวันก่อนหน้าจากสัญญาเก่า แผนภูมิการวิจัยอย่างต่อเนื่องและสัญญาที่ซื้อขายจำเป็นต้องมีการแมปที่บันทึกไว้
การทดสอบเชิงปฏิบัติควรประกอบด้วยช่วงการเปิดที่ล่าช้าหรือการหยุดที่ขอบเขตของช่วงราคา ควรตัดสินใจว่าช่วงการเปิดหมายถึงเวลาตามนาฬิกาหรือนาทีที่ทำการซื้อขายได้ คำจำกัดความเหล่านั้นให้ระดับราคาที่แตกต่างกันและไม่ควรเปลี่ยนหลังจากที่พบว่าแบบใดให้ผลการซื้อขายที่ดีกว่า
แยกผลของระดับราคาออกจากผลของเวลาภายในวัน
เปรียบเทียบรูปแบบการกวาดราคา PDH/PDL กับข้อมูลอ้างอิงแบบหมุนเวียนที่ระยะห่างจากราคาใกล้เคียงกัน หรือระดับสังเคราะห์ที่มีความหนาแน่นเทียบเท่ากัน จับคู่ตามนาทีภายในช่วงเวลาซื้อขาย ขนาดช่องว่าง และความผันผวน การเปรียบเทียบรูปแบบการกวาดราคาในช่วงเปิดกับทุกนาทีที่เงียบสงบของวัน สามารถใช้วัดช่วงเวลาเปิดตลาดได้เป็นส่วนใหญ่
รายงานผลลัพธ์แยกตามประเภทอ้างอิง รูปแบบช่วงเวลา การปรับเวลาตามฤดูกาล และหมวดหมู่ช่องว่าง ทดสอบวันหยุดที่ทราบและช่วงเวลาที่สั้นลงกับกลไกปฏิทิน ความคาดหวังสุทธิและอัตราคำสั่งไม่จับคู่ควรอยู่ควบคู่กับผลลัพธ์ระดับเงินทุนที่ยังคงรักษาช่วงเวลาที่ไม่มีสัญญาณไว้
การทดสอบขอบเขตควรรวมถึงการซื้อขายที่ window_start และ window_end อย่างแม่นยำ การประทับเวลาซ้ำกัน แท่งราคาที่หายไป การแก้ไขที่ล่าช้า และช่วงการซื้อขายแรกหลังจากการเปลี่ยนเขตเวลา ควรเก็บรักษาปฏิทินที่ใช้สำหรับการทดสอบแต่ละครั้งไว้ ตัวอย่างที่น่าสนใจเพียงเล็กน้อยไม่เพียงพอที่จะพิสูจน์ว่ากลยุทธ์นี้มีโอกาสมากพอที่จะคุ้มค่ากับค่าใช้จ่ายในการตรวจสอบและดำเนินการ
ข้อผิดพลาดที่พบบ่อย
โดยใช้ค่าสูงสุดหรือต่ำสุดของวันที่ยังไม่เสร็จสิ้น
จุดสูงสุดหรือต่ำสุดสุดท้ายรวมข้อมูลที่ยังรู้ไม่ได้ขณะเซสชันดำเนินอยู่
กำหนดเวลาเปิดทำการประจำที่แห่งเดียวตลอดทั้งปี
การเปลี่ยนแปลงเวลาและความแตกต่างของปฏิทินอาจทำให้ช่วงเวลาที่ตั้งใจไว้คลาดเคลื่อนไปได้
นับจำนวนการอ้างอิงที่ตรงกันซ้ำๆ
ORL, จุดต่ำสุดของรอบการซื้อขาย และ PDL ที่ราคาเดียวกัน อาจหมายถึงเหตุการณ์เดียวกัน
รายการตรวจสอบก่อนใช้วิธีนี้
ทำเครื่องหมายแต่ละข้อหลังตรวจสอบกับข้อมูลของคุณแล้ว ความคืบหน้าจะบันทึกในเบราว์เซอร์นี้ แต่ไม่ได้รับรองว่ากลยุทธ์ทำกำไรได้
คำถามที่พบบ่อย
เกิดการกวาดราคาภายในช่วงเปิดตลาดเองได้ไหม?
ราคาอาจข้ามขอบเขตชั่วคราวได้ แต่เป็นเครื่องตรวจจับคนละแบบ ไม่สามารถใช้ค่า ORH/ORL สุดท้ายได้ก่อนที่หน้าต่างเปิดจะเสร็จสมบูรณ์
การกวาดครั้งแรกต้องดีที่สุดเสมอไปหรือไม่?
ไม่ First-touch เป็นนโยบายที่เสนอขึ้นเพื่อให้แต่ละตอนเป็นอิสระต่อกัน ส่วน later touches ควรคงไว้และทดสอบในรูปแบบที่แตกต่างกันออกไป
แหล่งวิจัย
แต่ละแหล่งสนับสนุนคำจำกัดความหรือหลักฐานที่อธิบายไว้ข้างกัน รหัสเทียม ตัวอย่างสมมติ และพารามิเตอร์ที่เสนอต้องผ่านการตรวจสอบแยกต่างหาก
- Session SweepsLuxAlgo on TradingView. อ่านคำอธิบายเซสชันสวีปต้นฉบับแล้ว แต่ยังไม่ได้ยืนยันผลกำไร ตรวจสอบเมื่อ: .
- SessionsTradingView. อ่านกลไกเซสชันและเขตเวลา ไม่ใช่งานวิจัยผลตอบแทนส่วนเกิน ตรวจสอบเมื่อ: .
- Holidays and Trading HoursNYSE. เปิดดูปฏิทินอย่างเป็นทางการและเวลาทำการซื้อขายแล้ว ตรวจสอบเมื่อ: .
วิธีการที่เกี่ยวข้อง
หมายเหตุความเสี่ยง
เนื้อหานี้ใช้เพื่อการศึกษาและออกแบบงานวิจัย ไม่ใช่คำแนะนำทางการเงิน Backtest เป็นการจำลองข้อมูลในอดีต ไม่รับประกันผลในอนาคตและไม่ส่งคำสั่งซื้อขายจริง วิธีการในคลังนี้ไม่ได้หมายความว่ามีเป็นฟีเจอร์ในแอปทั้งหมด ดู ระเบียบวิธี และ ศูนย์การเรียนรู้.
ตรวจสอบกฎก่อนเสี่ยงด้วยเงินจริง
ตรวจสอบความสามารถของแอป ข้อมูล และแต่ละรายการซื้อขายจำลอง ตัวตรวจจับขั้นสูงอาจต้องพัฒนาแยกต่างหาก
ดาวน์โหลด Backtest บน App Store