สารบัญบทความ

หลักฐานและขอบเขต

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

ข้อมูลและตลาดหุ้น ฟิวเจอร์ส หรือคริปโตเคอร์เรนซีที่มีปฏิทินช่วงเวลาทำการซื้อขายที่กำหนดไว้อย่างชัดเจน ช่วงเวลาทำการซื้อขายปกติ ช่วงเวลาทำการซื้อขายเพิ่มเติม และช่วงเวลาซื้อขายฟิวเจอร์สข้ามคืน ต้องใช้ข้อกำหนดที่แตกต่างกัน
กรอบเวลาที่ใช้วิจัยกรอบราคาเปิด 15 นาทีและแท่งสัญญาณห้านาทีเป็นตัวอย่าง กรอบราคาต้องเสร็จสมบูรณ์ก่อนที่แท่งถัดไปจะใช้ขอบเขตสุดท้ายของกรอบได้
ช่วงราคาเปิดที่ 200–205 ถูกตรึงไว้ จากนั้นราคาก็เคลื่อนตัวไปที่ 199.60 และปิดกลับมาที่ 200.40เปิดภาพประกอบขนาดเต็ม
ข้อมูลเหตุการณ์สมมติ กรอบเปิดจบก่อนราคาลงทะลุขอบในภายหลัง ไม่ใช่กราฟแท่งเวลาหรือผลทดสอบจริง

ขั้นตอนปฏิบัติ

ขั้นตอนสำหรับ Sweep จุดสูงต่ำของเซสชัน: ตรึงปฏิทินก่อนสัญญาณ
ขั้นตอนทั้งหมดอธิบายไว้ด้านล่าง ทุกขั้นต้องบันทึกเหตุผลที่คัดออกเมื่อข้อมูลไม่ครบหรือเงื่อนไขไม่ผ่าน
  1. กำหนดเซสชันเลือกตลาดซื้อขาย ปฏิทิน และเขตเวลา
  2. รอช่วงอ้างอิงให้จบเผยแพร่เฉพาะค่าสูงสุดและต่ำสุดของช่วงก่อนหน้าหรือช่วงเปิดตลาดเมื่อทราบเท่านั้น
  3. ตรวจจับการกวาดล้างครั้งถัดไปใช้บัฟเฟอร์คงที่และเวอร์ชันระดับที่เหมาะสม
  4. ยืนยันและส่งใช้เวลาที่รับราคาปิดจริงและแบบคำสั่งที่เลือก
  5. ประเมินตามประเภทของเซสชันรวมถึงวันที่ไม่มีสัญญาณ ช่องว่าง และกรณีพิเศษของปฏิทินด้วย

ประเภทอ้างอิงสามแบบที่มีข้อมูลแตกต่างกัน

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 ที่ราคาเดียวกัน อาจหมายถึงเหตุการณ์เดียวกัน

รายการตรวจสอบก่อนใช้วิธีนี้

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

0/7 ข้อ

คำถามที่พบบ่อย

เกิดการกวาดราคาภายในช่วงเปิดตลาดเองได้ไหม?

ราคาอาจข้ามขอบเขตชั่วคราวได้ แต่เป็นเครื่องตรวจจับคนละแบบ ไม่สามารถใช้ค่า ORH/ORL สุดท้ายได้ก่อนที่หน้าต่างเปิดจะเสร็จสมบูรณ์

การกวาดครั้งแรกต้องดีที่สุดเสมอไปหรือไม่?

ไม่ First-touch เป็นนโยบายที่เสนอขึ้นเพื่อให้แต่ละตอนเป็นอิสระต่อกัน ส่วน later touches ควรคงไว้และทดสอบในรูปแบบที่แตกต่างกันออกไป

แหล่งวิจัย

แต่ละแหล่งสนับสนุนคำจำกัดความหรือหลักฐานที่อธิบายไว้ข้างกัน รหัสเทียม ตัวอย่างสมมติ และพารามิเตอร์ที่เสนอต้องผ่านการตรวจสอบแยกต่างหาก

  1. Session SweepsLuxAlgo on TradingView. อ่านคำอธิบายเซสชันสวีปต้นฉบับแล้ว แต่ยังไม่ได้ยืนยันผลกำไร ตรวจสอบเมื่อ: .
  2. SessionsTradingView. อ่านกลไกเซสชันและเขตเวลา ไม่ใช่งานวิจัยผลตอบแทนส่วนเกิน ตรวจสอบเมื่อ: .
  3. Holidays and Trading HoursNYSE. เปิดดูปฏิทินอย่างเป็นทางการและเวลาทำการซื้อขายแล้ว ตรวจสอบเมื่อ: .

วิธีการที่เกี่ยวข้อง

หมายเหตุความเสี่ยง

เนื้อหานี้ใช้เพื่อการศึกษาและออกแบบงานวิจัย ไม่ใช่คำแนะนำทางการเงิน Backtest เป็นการจำลองข้อมูลในอดีต ไม่รับประกันผลในอนาคตและไม่ส่งคำสั่งซื้อขายจริง วิธีการในคลังนี้ไม่ได้หมายความว่ามีเป็นฟีเจอร์ในแอปทั้งหมด ดู ระเบียบวิธี และ ศูนย์การเรียนรู้.

ตรวจสอบกฎก่อนเสี่ยงด้วยเงินจริง

ตรวจสอบความสามารถของแอป ข้อมูล และแต่ละรายการซื้อขายจำลอง ตัวตรวจจับขั้นสูงอาจต้องพัฒนาแยกต่างหาก

ดาวน์โหลด Backtest บน App Store