Commit 261366a
Add VIX Mini Futures (VXM) Support (#9400)
* Add VIX Mini Futures (VXM) support
Adds complete LEAN support for VIX Mini Futures (VXM) traded on CBOE:
- Add Futures.Indices.VIXMini = "VXM" constant
- Add expiry function: 30 days before third Friday of following month
- Add symbol properties: multiplier 100, tick 0.01 (USD)
- Add 15 test date pairs for 2023-2025 to FuturesExpiryFunctionsTestData.xml
- Add [TestCase(VIXMini, EightOClockChicagoTime)] to IndicesExpiryDateFunction test
- Add market hours configuration mirroring VX trading hours
Closes #6655
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
* Fix VXM expiry holiday validation and add margin file
- Replace single `if` holiday check with `while` loop using
`IsCommonBusinessDay()` to ensure the computed expiry date
is always a valid tradable day (not just one step back)
- Fix test data: 2025-03-19 -> 2025-03-18 (April 18 2025 is
Good Friday, a CFE holiday, shifting the expiry back)
- Add Data/future/cfe/margins/VXM.csv margin file
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Haiku 4.5 <noreply@anthropic.com>1 parent 932fb7e commit 261366a
7 files changed
Lines changed: 154 additions & 0 deletions
File tree
- Common/Securities/Future
- Data
- future/cfe/margins
- market-hours
- symbol-properties
- Tests
- Common/Securities/Futures
- TestData
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1388 | 1388 | | |
1389 | 1389 | | |
1390 | 1390 | | |
| 1391 | + | |
| 1392 | + | |
| 1393 | + | |
| 1394 | + | |
| 1395 | + | |
| 1396 | + | |
1391 | 1397 | | |
1392 | 1398 | | |
1393 | 1399 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
543 | 543 | | |
544 | 544 | | |
545 | 545 | | |
| 546 | + | |
| 547 | + | |
| 548 | + | |
| 549 | + | |
| 550 | + | |
| 551 | + | |
| 552 | + | |
| 553 | + | |
| 554 | + | |
| 555 | + | |
| 556 | + | |
| 557 | + | |
| 558 | + | |
| 559 | + | |
| 560 | + | |
| 561 | + | |
| 562 | + | |
| 563 | + | |
| 564 | + | |
| 565 | + | |
| 566 | + | |
| 567 | + | |
| 568 | + | |
| 569 | + | |
| 570 | + | |
546 | 571 | | |
547 | 572 | | |
548 | 573 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
71632 | 71632 | | |
71633 | 71633 | | |
71634 | 71634 | | |
| 71635 | + | |
| 71636 | + | |
| 71637 | + | |
| 71638 | + | |
| 71639 | + | |
| 71640 | + | |
| 71641 | + | |
| 71642 | + | |
| 71643 | + | |
| 71644 | + | |
| 71645 | + | |
| 71646 | + | |
| 71647 | + | |
| 71648 | + | |
| 71649 | + | |
| 71650 | + | |
| 71651 | + | |
| 71652 | + | |
| 71653 | + | |
| 71654 | + | |
| 71655 | + | |
| 71656 | + | |
| 71657 | + | |
| 71658 | + | |
| 71659 | + | |
| 71660 | + | |
| 71661 | + | |
| 71662 | + | |
| 71663 | + | |
| 71664 | + | |
| 71665 | + | |
| 71666 | + | |
| 71667 | + | |
| 71668 | + | |
| 71669 | + | |
| 71670 | + | |
| 71671 | + | |
| 71672 | + | |
| 71673 | + | |
| 71674 | + | |
| 71675 | + | |
| 71676 | + | |
| 71677 | + | |
| 71678 | + | |
| 71679 | + | |
| 71680 | + | |
| 71681 | + | |
| 71682 | + | |
| 71683 | + | |
| 71684 | + | |
| 71685 | + | |
| 71686 | + | |
| 71687 | + | |
| 71688 | + | |
| 71689 | + | |
| 71690 | + | |
| 71691 | + | |
| 71692 | + | |
| 71693 | + | |
| 71694 | + | |
| 71695 | + | |
| 71696 | + | |
| 71697 | + | |
| 71698 | + | |
| 71699 | + | |
| 71700 | + | |
| 71701 | + | |
| 71702 | + | |
| 71703 | + | |
| 71704 | + | |
| 71705 | + | |
| 71706 | + | |
| 71707 | + | |
| 71708 | + | |
| 71709 | + | |
| 71710 | + | |
| 71711 | + | |
| 71712 | + | |
| 71713 | + | |
| 71714 | + | |
| 71715 | + | |
| 71716 | + | |
| 71717 | + | |
| 71718 | + | |
| 71719 | + | |
| 71720 | + | |
| 71721 | + | |
| 71722 | + | |
| 71723 | + | |
| 71724 | + | |
| 71725 | + | |
| 71726 | + | |
| 71727 | + | |
| 71728 | + | |
| 71729 | + | |
| 71730 | + | |
| 71731 | + | |
| 71732 | + | |
| 71733 | + | |
| 71734 | + | |
| 71735 | + | |
| 71736 | + | |
| 71737 | + | |
| 71738 | + | |
| 71739 | + | |
| 71740 | + | |
| 71741 | + | |
| 71742 | + | |
| 71743 | + | |
| 71744 | + | |
| 71745 | + | |
| 71746 | + | |
| 71747 | + | |
| 71748 | + | |
| 71749 | + | |
| 71750 | + | |
| 71751 | + | |
| 71752 | + | |
71635 | 71753 | | |
71636 | 71754 | | |
71637 | 71755 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
214 | 214 | | |
215 | 215 | | |
216 | 216 | | |
| 217 | + | |
217 | 218 | | |
218 | 219 | | |
219 | 220 | | |
| |||
Lines changed: 1 addition & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
394 | 394 | | |
395 | 395 | | |
396 | 396 | | |
| 397 | + | |
397 | 398 | | |
398 | 399 | | |
399 | 400 | | |
| |||
Binary file not shown.
0 commit comments