เซสชันการเทรด
ตั้งแต่การเปิดตัว cTrader Windows 4.5 API ได้รวมอินเทอร์เฟซ MarketSessions ช่วยให้คุณรับข้อมูลเกี่ยวกับเซสชันตลาดปัจจุบันและใช้ข้อมูลนี้ใน cBots และอินดิเคเตอร์ของคุณ
เซสชันการเทรดในการพัฒนา Algo
ประเภท MarketSession เป็น enum ที่มีค่าแทนเซสชันการเทรดต่างๆ (เช่น Singapore หรือ London)
ในทางกลับกัน คุณสมบัติ MarketSessions เป็นประเภท MarketSession เพื่อรับเซสชันตลาดปัจจุบันทั้งหมด ให้ใช้ดังนี้
1 | |
ค่าของคุณสมบัติ MarketSessions ควรตรงกับเซสชันที่แสดงในฟิลด์ เซสชันการเทรด ที่มุมล่างซ้ายของอินเทอร์เฟซ cTrader

คุณสามารถใช้เมธอด HasFlag เพื่อตรวจสอบว่าเซสชันปัจจุบันมีเซสชันเฉพาะหรือไม่
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | |
คุณยังสามารถจัดการกับอีเวนต์ MarketSessionsChanged เพื่อตรวจจับและตอบสนองต่อการเปลี่ยนแปลงใดๆ ในเซสชันตลาด คลาส MarketSessionChangedEventArgs มีคุณสมบัติสองอย่าง ได้แก่ NewSessions และ PreviousSessions ซึ่งทำงานดังนี้:
NewSessionsมีเซสชันปัจจุบันทั้งหมดรวมถึงเซสชันใดๆ ที่เพิ่งเริ่มต้น ค่าของNewSessionsจะเท่ากับค่าของคุณสมบัติMarketSessionsของ cBot หรืออินดิเคเตอร์เสมอPreviousSessionsยังมีเซสชันปัจจุบันทั้งหมด แต่ยังมีเซสชันในอดีตที่เพิ่งสิ้นสุดด้วย ค่าของมันจะเท่ากับค่าของคุณสมบัติMarketSessionsของ cBot หรืออินดิเคเตอร์ก่อนที่MarketSessionsChangedจะถูกเรียกใช้
สำหรับการดูรายละเอียดเพิ่มเติมเกี่ยวกับวิธีการทำงานของ NewSessions และ PreviousSessions โปรดดูตัวอย่างด้านล่าง
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | |
ในบันทึก คุณควรเห็นรายการใหม่สองรายการสำหรับการเปลี่ยนแปลงเซสชันแต่ละครั้ง รายการเหล่านี้จะแจ้งให้คุณทราบว่าเซสชันการเทรดในอดีตเป็นอย่างไรและตอนนี้เป็นอย่างไร
เซสชันการเทรดระหว่างการ Backtesting
คุณสมบัติ MarketSessions ทำงานทั้งในสภาพแวดล้อมแบบสดและการ Backtesting ระหว่างการ Backtesting คุณสมบัตินี้จะมีเซสชันที่สัมพันธ์กับช่วงเวลาการ Backtest ที่เลือก กล่าวอีกนัยหนึ่ง คุณสามารถใช้มันเพื่อเข้าถึงเซสชันการเทรดที่ใช้งานอยู่ในช่วงการเทรดในอดีตที่เฉพาะเจาะจง