Jitendra12421 commited on
Commit
8cfd3b4
·
verified ·
1 Parent(s): 8a0888d

Upload 34 files

Browse files
models/nifty_opening_mfe_regressor/outputs/candidate_results.csv ADDED
@@ -0,0 +1,46 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ target,model,feature_count,validation_mae_points,validation_rmse_points,test_mae_points,test_rmse_points,test_high_mfe_mae_points,test_low_mfe_mae_points,baseline_test_mae_points,latest_prediction_points
2
+ after5_up_points,random_forest_d6_l10_all+affine_s1.26_b-4,188,62.814071097341994,95.96458512713473,55.869403284612446,79.459874253419,120.36235726321215,34.22747241931052,75.35728446922032,63.15162391627527
3
+ after5_up_points,histgb_abs_140+affine_s1.26_b+12,140,62.84459754416355,96.71388540639482,56.724145130364015,82.19477605751979,128.86855179698847,32.51461269189943,75.35728446922032,60.0207943690521
4
+ after5_up_points,random_forest_d7_l10_150+affine_s1.26_b-8,150,62.85799172558572,96.86714042382735,55.29433311110906,78.30850739750797,119.91967897684735,33.60797543804251,75.35728446922032,61.9234097677693
5
+ after5_up_points,random_forest_d6_l10_180+affine_s1.26_b-4,180,62.99371043160133,95.66084870246584,55.93182505352735,79.35221714857502,120.65327270676569,34.2132184584809,75.35728446922032,62.69233713786123
6
+ after5_up_points,random_forest_d5_120+affine_s1.26_b-8,120,63.27872988451123,97.4146607330525,56.00375751421763,80.49260944338006,123.77258836890215,33.262539106605374,75.35728446922032,58.43958583128338
7
+ after5_up_points,random_forest_d6_l10_80+affine_s1.24_b-4,80,63.29420675940689,96.90962389896696,57.1373656834078,80.06097056687767,125.17973126244286,34.30435709983898,75.35728446922032,59.22411684916119
8
+ after5_up_points,gradboost_abs_140+affine_s1.26_b+12,140,63.36924226731887,97.76594157376842,56.435350136629204,82.19703394402472,128.62385471905998,32.21101973984035,75.35728446922032,61.16475583609494
9
+ after5_up_points,extra_trees_d7_l12_140+affine_s1.26_b-12,140,63.38302824195118,97.32372576405447,55.22312292508635,79.4093436913592,121.49222757067584,32.98516834602948,75.35728446922032,82.59539549590019
10
+ after5_up_points,extra_trees_full_l10_160+affine_s1.26_b-12,160,63.43068234328097,96.82354787958309,54.8613725960788,78.31902453073755,118.98163346190331,33.344506533721564,75.35728446922032,80.47236162113926
11
+ after5_up_points,extra_trees_d7_l12_120+affine_s1.26_b-12,120,63.45855645876955,97.31806592751788,55.19856476922982,79.28352501280438,121.2465189125756,33.03482176810708,75.35728446922032,82.65588135337931
12
+ after5_up_points,extra_trees_d7_l12_180+affine_s1.26_b-8,180,63.60953718884168,96.9113703856202,55.32981641127371,79.12338658830383,119.96492459536698,33.64018279245045,75.35728446922032,83.73257347011302
13
+ after5_up_points,extra_trees_d6_140+affine_s1.26_b-12,140,63.74412159891231,97.54484396806865,55.39545900465791,79.6208401630119,121.98590520119218,33.049671690384656,75.35728446922032,80.56425405097181
14
+ after5_up_points,gradboost_huber_100+affine_s1.26_b+4,100,64.03108818071811,97.67694026998507,57.28183110708846,82.45998655069438,127.76275900919381,33.63051301913363,75.35728446922032,64.20525473331307
15
+ after5_up_points,extra_trees_full_l10_160,160,64.05061006479353,99.94288851354058,56.587973951642226,82.87779886976914,131.55118194196365,31.432535028715563,75.35728446922032,73.39076319138034
16
+ after5_up_points,extra_trees_d7_l12_140,140,64.24006686680475,100.5135801355967,57.30248088446278,83.95234068165725,133.67521340680165,31.674047152134303,75.35728446922032,75.07571071103189
17
+ after5_up_points,random_forest_d7_l10_150,150,64.25981512211987,101.22761654061571,57.66681878811496,84.12909316925169,135.50689948115252,31.545986340786932,75.35728446922032,55.494769656959754
18
+ after5_up_points,extra_trees_d7_l12_120,120,64.3122746779685,100.48950044039546,57.19157966052789,83.85053092485894,133.88496044823242,31.455545839150535,75.35728446922032,75.12371535982484
19
+ after5_up_points,random_forest_d6_l10_180,180,64.4993604935348,101.32834934432061,58.600955075731534,86.12298977454502,139.3579644469373,31.501287501501402,75.35728446922032,52.93042629988985
20
+ after5_up_points,random_forest_d6_l10_all,188,64.51312142239915,101.63584043465356,58.7746020251738,86.2136917960478,139.14474199957323,31.804756396180696,75.35728446922032,53.294939616091476
21
+ after5_up_points,extra_trees_d4_100+affine_s1.26_b-12,100,64.5278045046063,98.69512742614585,57.29949440831866,83.17372121559795,129.77509484381648,32.978823121238854,75.35728446922032,82.02262641758882
22
+ after5_up_points,extra_trees_d7_l12_180,180,64.54586920589512,101.21549866711403,57.60534110190456,84.76513287764755,135.9550852904523,31.313480635948935,75.35728446922032,72.80362973818492
23
+ after5_up_points,histgb_abs_80+affine_s1.26_b+8,80,64.55878123857543,98.0417272908871,57.866121663941996,82.1338697410737,126.6860623633252,34.77218183193422,75.35728446922032,60.59457997680678
24
+ after5_up_points,extra_trees_d6_140,140,64.57321628367322,100.71533125100002,57.52625548915709,84.11599188116277,133.99537019127922,31.86547874347851,75.35728446922032,73.46369369124746
25
+ after5_up_points,random_forest_d5_120,120,64.60486688067431,101.830825234596,58.86346856653808,86.21648108546263,138.99843355880714,31.972540716783364,75.35728446922032,52.729830024828075
26
+ after5_up_points,random_forest_d6_l10_80,80,64.93122113016017,101.75851808622853,59.51896206973792,86.56525198888453,142.69576664309915,31.607282682703943,75.35728446922032,50.98719100738805
27
+ after5_up_points,extra_trees_d4_100,100,65.3154438994165,101.7598749526402,59.53559670345175,87.40638570195492,141.41669246037026,32.05871893267373,75.35728446922032,74.62113207745143
28
+ after5_up_points,gradboost_huber_100,100,67.00341799249082,105.97038333742564,62.47130036232785,92.26222548831535,152.51801322654276,32.25428262265842,75.35728446922032,47.781948201042105
29
+ after5_up_points,histgb_abs_80,80,68.01230519736447,107.50690244413211,63.2181137868177,93.26410239957467,154.83809525363117,32.47315356305477,75.35728446922032,41.74173014032283
30
+ after5_up_points,histgb_abs_140,140,68.5487353918156,108.60585232374254,65.02482366025059,96.01019622663685,159.74483289939565,33.23958566053748,75.35728446922032,38.11174156273975
31
+ after5_up_points,gradboost_abs_140,140,68.93610352560633,109.44736921034585,64.75931011811319,95.78408729541009,159.55062886929366,32.95014275194523,75.35728446922032,39.01964748896423
32
+ after5_down_points,random_forest_d7_l10_150,150,72.01385673724953,122.53041341022657,62.985231430060715,97.51356947384825,141.1492761242954,36.75568623065309,77.89575416143268,71.5788486914341
33
+ after5_down_points,random_forest_d6_l10_180,180,72.01996420726842,121.97934751692935,63.312365638240735,97.96601671796515,141.76059732763278,36.9874556753575,77.89575416143268,68.49809232556989
34
+ after5_down_points,random_forest_d6_l10_all,188,72.0220633474691,122.23743555860352,63.51952792213079,98.11273365232542,142.2590233564593,37.096878447523885,77.89575416143268,68.82844220480091
35
+ after5_down_points,extra_trees_full_l10_160,160,72.0806627791429,124.1070361496722,63.78404150713735,99.31372537584545,150.15058283090937,34.80198066023398,77.89575416143268,78.60311943453601
36
+ after5_down_points,random_forest_d6_l10_80,80,72.14473633423354,121.100650429369,64.36965494250742,98.77113471915764,143.27670742584675,37.89077827024591,77.89575416143268,65.37078768539301
37
+ after5_down_points,random_forest_d5_120,120,72.19328872639154,122.33872071649559,63.87197110663082,98.52315275025904,144.50662242919202,36.81336328026798,77.89575416143268,72.56995187248033
38
+ after5_down_points,extra_trees_d7_l12_140,140,72.41604731956579,125.08312385454028,64.37697032752942,101.1154560394603,155.46087207559384,33.81190262683666,77.89575416143268,76.5682351628532
39
+ after5_down_points,extra_trees_d7_l12_120,120,72.4162895037992,124.90879470615543,64.5355278210637,101.05059170901211,155.39553038256716,34.04559407559275,77.89575416143268,76.5315562558918
40
+ after5_down_points,extra_trees_d7_l12_180,180,72.42049922099216,124.96422859517544,64.18375797541256,100.65666207456884,154.33528590771937,33.93156739410157,77.89575416143268,76.15592910769956
41
+ after5_down_points,gradboost_huber_100,100,72.56516940658615,126.15286854277937,65.5583461124321,103.6328603115815,161.4009117777494,33.396411325412885,77.89575416143268,69.49296582421334
42
+ after5_down_points,extra_trees_d6_140,140,72.68127424795533,125.56233106196899,64.71381256265276,101.59193550875953,157.0008258703297,33.74501615068067,77.89575416143268,75.8515715101158
43
+ after5_down_points,extra_trees_d4_100,100,72.90559363760386,125.23615685473882,65.28481082903333,102.02050425110933,158.35742175100168,34.05239105656072,77.89575416143268,74.70706934654919
44
+ after5_down_points,gradboost_abs_140,140,76.44133432267984,133.47734944700437,68.96952947532041,109.82864669780533,176.74366701342066,32.80371150951493,77.89575416143268,58.72424393856812
45
+ after5_down_points,histgb_abs_140,140,76.60657046525694,133.68765588870926,68.36493000090694,109.25421427077461,174.39220432540307,32.7853077443646,77.89575416143268,66.02272042949951
46
+ after5_down_points,histgb_abs_80,80,77.99320079635616,135.09600657244542,70.71888446700005,112.5572039670201,182.0108722453825,33.3725798433818,77.89575416143268,54.56391672132039
models/nifty_opening_mfe_regressor/outputs/latest_prediction.csv ADDED
@@ -0,0 +1,2 @@
 
 
 
1
+ input_date,first5_start,first5_end,first5_close,predicted_up_points,predicted_down_points
2
+ 2026-06-09,2026-06-09 09:15:00,2026-06-09 09:19:00,23234.849609375,63.15162391627527,71.5788486914341
models/nifty_opening_mfe_regressor/outputs/nifty_opening_mfe_regressor.joblib ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:41649e8b1ceddd23afaf3195d544b03b062380c73cd6751266ba5c75813b6f5c
3
+ size 5491678
models/nifty_opening_mfe_regressor/outputs/regression_ceiling_sweep.json ADDED
The diff for this file is too large to render. See raw diff
 
models/nifty_opening_mfe_regressor/outputs/report.md ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # NIFTY Opening MFE Regressor
2
+
3
+ Target: Predict remaining same-day NIFTY upside/downside points after the first five 1-minute bars.
4
+ Train/valid/test rows: 2221/405/199.
5
+ Test window: 2025-08-18 to 2026-06-09.
6
+ Features: 188.
7
+
8
+ ## Regression
9
+ - UP/high MFE model: random_forest_d6_l10_all+affine_s1.26_b-4, test MAE 55.9 pts, RMSE 79.5 pts, baseline MAE 75.4 pts.
10
+ - DOWN/low MFE model: random_forest_d7_l10_150, test MAE 63.0 pts, RMSE 97.5 pts, baseline MAE 77.9 pts.
11
+ - UP/high tail-vs-rest MAE: 120.4 / 34.2 pts.
12
+ - DOWN/low tail-vs-rest MAE: 141.1 / 36.8 pts.
13
+
14
+ ## Latest
15
+ - input date: 2026-06-09
16
+ - first 5 minutes: 2026-06-09 09:15:00 to 2026-06-09 09:19:00
17
+ - first5 close: 23234.85
18
+ - predicted UP MFE: 63.2 pts
19
+ - predicted DOWN MFE: 71.6 pts
models/nifty_opening_mfe_regressor/outputs/summary.json ADDED
@@ -0,0 +1,47 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "target_definition": "Predict remaining same-day NIFTY upside/downside points after the first five 1-minute bars.",
3
+ "train_rows": 2221,
4
+ "valid_rows": 405,
5
+ "test_rows": 199,
6
+ "train_start": "2015-01-09",
7
+ "train_end": "2023-12-29",
8
+ "valid_start": "2024-01-01",
9
+ "valid_end": "2025-08-14",
10
+ "test_start": "2025-08-18",
11
+ "test_end": "2026-06-09",
12
+ "feature_count": 188,
13
+ "up": {
14
+ "target": "after5_up_points",
15
+ "selected_model": "random_forest_d6_l10_all+affine_s1.26_b-4",
16
+ "selected_feature_count": 188,
17
+ "validation_mae_points": 62.814071097341994,
18
+ "validation_rmse_points": 95.96458512713473,
19
+ "test_mae_points": 55.869403284612446,
20
+ "test_rmse_points": 79.459874253419,
21
+ "test_high_mfe_mae_points": 120.36235726321215,
22
+ "test_low_mfe_mae_points": 34.22747241931052,
23
+ "baseline_test_mae_points": 75.35728446922032,
24
+ "test_mae_improvement_pct": 25.860646813205825,
25
+ "latest_prediction_points": 63.15162391627527
26
+ },
27
+ "down": {
28
+ "target": "after5_down_points",
29
+ "selected_model": "random_forest_d7_l10_150",
30
+ "selected_feature_count": 150,
31
+ "validation_mae_points": 72.01385673724953,
32
+ "validation_rmse_points": 122.53041341022657,
33
+ "test_mae_points": 62.985231430060715,
34
+ "test_rmse_points": 97.51356947384825,
35
+ "test_high_mfe_mae_points": 141.1492761242954,
36
+ "test_low_mfe_mae_points": 36.75568623065309,
37
+ "baseline_test_mae_points": 77.89575416143268,
38
+ "test_mae_improvement_pct": 19.141637297035604,
39
+ "latest_prediction_points": 71.5788486914341
40
+ },
41
+ "latest_input_date": "2026-06-09",
42
+ "latest_first5_start": "2026-06-09 09:15:00",
43
+ "latest_first5_end": "2026-06-09 09:19:00",
44
+ "latest_first5_close": 23234.849609375,
45
+ "latest_predicted_up_points": 63.15162391627527,
46
+ "latest_predicted_down_points": 71.5788486914341
47
+ }
models/nifty_opening_mfe_regressor/outputs/test_predictions.csv ADDED
@@ -0,0 +1,200 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ date,first5_close,day_high,day_low,day_close,after5_up_points,after5_down_points,predicted_up_points,predicted_down_points
2
+ 2025-08-18,24943.3,25022.0,24852.85,24884.05,78.70000000000073,90.45000000000073,70.74537556748926,69.95608867077122
3
+ 2025-08-19,24905.95,25012.65,24873.95,24989.7,106.70000000000073,32.0,69.58622767243469,72.86841515213641
4
+ 2025-08-20,24943.7,25088.7,24929.7,25047.15,145.0,14.0,72.2215386978149,66.87535067178419
5
+ 2025-08-21,25074.4,25153.65,25054.9,25076.95,79.25,19.5,75.9678756477438,85.01325608135507
6
+ 2025-08-22,25022.5,25084.85,24859.15,24869.45,62.349999999998545,163.34999999999854,76.00333285776364,74.38421945646837
7
+ 2025-08-25,24923.8,25021.55,24894.35,24978.55,97.75,29.450000000000728,72.08624856357176,72.36965738462226
8
+ 2025-08-26,24849.75,24919.65,24689.6,24710.7,69.90000000000146,160.15000000000146,81.82237433198587,75.67181816799939
9
+ 2025-08-28,24577.25,24702.65,24481.6,24533.1,125.40000000000146,95.65000000000146,107.37349857848692,103.48101375434891
10
+ 2025-08-29,24507.4,24572.45,24404.7,24433.65,65.04999999999927,102.70000000000073,92.69929951194534,127.36320204934307
11
+ 2025-09-01,24523.5,24635.6,24432.7,24624.3,112.09999999999854,90.79999999999927,85.59277839975796,102.11100920697749
12
+ 2025-09-02,24662.9,24756.1,24522.35,24575.0,93.19999999999709,140.5500000000029,71.68120758636995,76.0402487590437
13
+ 2025-09-03,24541.0,24737.05,24533.2,24713.6,196.04999999999927,7.799999999999272,97.43911992220335,85.04967811472694
14
+ 2025-09-04,24863.8,24980.75,24708.2,24739.8,116.95000000000073,155.59999999999854,103.12730476704783,78.17111502420333
15
+ 2025-09-05,24827.5,24832.35,24621.6,24743.95,4.849999999998545,205.90000000000146,73.98230098745448,85.62699852482866
16
+ 2025-09-08,24787.65,24885.5,24751.55,24791.2,97.84999999999854,36.10000000000218,72.29944694258762,65.75039472494996
17
+ 2025-09-09,24854.2,24891.8,24814.0,24878.8,37.599999999998545,40.20000000000073,69.44370753005204,77.52099482542334
18
+ 2025-09-10,24962.65,25035.7,24915.05,24977.55,73.04999999999927,47.60000000000218,71.89450651813125,72.72213315583208
19
+ 2025-09-11,25000.8,25037.3,24940.15,25008.1,36.5,60.64999999999782,70.68275488183907,73.77386846663569
20
+ 2025-09-12,25053.3,25139.45,25038.05,25107.7,86.15000000000146,15.25,72.04701987775606,72.71521942996507
21
+ 2025-09-15,25091.4,25138.45,25048.75,25069.7,47.04999999999927,42.650000000001455,74.37466301106662,56.21764396713863
22
+ 2025-09-16,25106.75,25261.4,25070.45,25254.45,154.65000000000146,36.29999999999927,70.4334423975961,77.09468335603322
23
+ 2025-09-17,25297.05,25346.5,25275.35,25330.15,49.45000000000073,21.700000000000728,70.23690402772418,73.54908914096771
24
+ 2025-09-18,25411.2,25448.95,25329.75,25420.75,37.75,81.45000000000073,72.10814928193922,68.07462808633801
25
+ 2025-09-19,25381.45,25428.75,25286.3,25352.5,47.29999999999927,95.15000000000146,74.70715216901579,89.46626946473036
26
+ 2025-09-22,25258.55,25331.7,25151.05,25200.2,73.15000000000146,107.5,71.56191508125039,77.53793666571973
27
+ 2025-09-23,25228.05,25261.9,25084.65,25185.8,33.85000000000218,143.39999999999782,69.2148241834104,84.93267760178357
28
+ 2025-09-24,25092.3,25149.85,25027.45,25060.9,57.54999999999927,64.84999999999854,73.87437120520443,78.18656010430726
29
+ 2025-09-25,25054.4,25092.7,24878.3,24904.55,38.29999999999927,176.10000000000218,71.65598616236045,87.4073952684888
30
+ 2025-09-26,24816.0,24868.6,24629.45,24673.1,52.599999999998545,186.54999999999927,75.98342218786617,112.06060895062173
31
+ 2025-09-29,24673.7,24791.3,24606.2,24677.55,117.59999999999854,67.5,83.37538480505997,95.65712047233477
32
+ 2025-09-30,24713.65,24731.8,24587.7,24633.6,18.149999999997817,125.95000000000073,74.9517147798891,87.6251433757387
33
+ 2025-10-01,24620.5,24867.95,24605.95,24853.4,247.45000000000073,14.549999999999272,77.12668758054085,85.91485675791243
34
+ 2025-10-03,24785.05,24904.8,24747.55,24895.0,119.75,37.5,81.10550551698013,78.1100418959116
35
+ 2025-10-06,24927.05,25095.95,24881.65,25072.55,168.90000000000146,45.39999999999782,69.46213473733515,68.8959058147205
36
+ 2025-10-07,25084.9,25220.9,25076.3,25112.8,136.0,8.600000000002183,78.44188298577762,71.62453401261332
37
+ 2025-10-08,25146.05,25192.5,25008.5,25023.8,46.45000000000073,137.54999999999927,70.87032840015426,81.93097812216612
38
+ 2025-10-09,25058.95,25199.25,25024.3,25170.3,140.29999999999927,34.650000000001455,69.72385100925113,89.36013847299986
39
+ 2025-10-10,25221.2,25330.75,25156.85,25278.2,109.54999999999927,64.35000000000218,73.60123392651,77.07921283623484
40
+ 2025-10-13,25213.8,25267.3,25152.3,25237.15,53.5,61.5,72.9387780959113,71.96467174317387
41
+ 2025-10-14,25293.3,25310.35,25060.55,25123.35,17.049999999999272,232.75,69.75624962391593,75.72942009497733
42
+ 2025-10-15,25239.95,25365.15,25159.35,25327.75,125.20000000000073,80.60000000000218,79.00736543634586,89.70179097400522
43
+ 2025-10-16,25412.15,25625.4,25376.85,25566.3,213.25,35.30000000000291,69.37806626638448,75.22834036609319
44
+ 2025-10-17,25554.05,25781.5,25508.6,25704.7,227.45000000000073,45.45000000000073,70.6399534752275,82.59735724680043
45
+ 2025-10-20,25902.8,25926.2,25788.5,25850.7,23.400000000001455,114.29999999999927,82.0103286656743,71.42501744995688
46
+ 2025-10-21,25903.25,25934.35,25826.3,25833.3,31.099999999998545,76.95000000000073,70.4734596248554,72.82024209764482
47
+ 2025-10-23,26003.75,26104.2,25862.45,25870.3,100.45000000000073,141.29999999999927,78.25616002674558,75.58880300627324
48
+ 2025-10-24,25850.8,25944.15,25718.2,25797.45,93.35000000000218,132.59999999999854,85.9352895781675,84.67147328741909
49
+ 2025-10-27,25861.4,26005.95,25827.0,25974.0,144.54999999999927,34.400000000001455,49.17301873308348,61.10766648725366
50
+ 2025-10-28,25968.1,26041.7,25810.05,25965.4,73.60000000000218,158.04999999999927,72.5812143633312,85.61675283659459
51
+ 2025-10-29,25979.75,26097.85,25960.3,26068.3,118.09999999999854,19.450000000000728,75.08031314406708,79.68242908469409
52
+ 2025-10-30,25985.15,26032.05,25845.25,25891.2,46.89999999999782,139.90000000000146,73.39380876964638,74.325383761321
53
+ 2025-10-31,25862.85,25953.75,25711.2,25732.55,90.90000000000146,151.64999999999782,73.94864338763755,79.1021674617272
54
+ 2025-11-03,25687.85,25803.1,25645.5,25774.3,115.25,42.349999999998545,48.84044727691018,67.28257199135699
55
+ 2025-11-04,25755.4,25787.4,25578.4,25586.25,32.0,177.0,71.3743139533095,89.3481792230919
56
+ 2025-11-06,25666.7,25679.15,25491.55,25519.95,12.450000000000728,175.15000000000146,77.85466759246198,90.57445591555327
57
+ 2025-11-07,25378.15,25551.25,25318.45,25510.05,173.09999999999854,59.70000000000073,82.87633192312792,90.85600003629604
58
+ 2025-11-10,25554.6,25653.45,25503.5,25574.25,98.85000000000218,51.099999999998545,76.07720514892765,92.5203310121857
59
+ 2025-11-11,25544.8,25715.8,25449.25,25705.55,171.0,95.54999999999927,84.99031835536154,91.46776795888675
60
+ 2025-11-12,25807.2,25934.55,25781.15,25874.0,127.34999999999854,26.049999999999272,72.59276739431719,69.43894779255301
61
+ 2025-11-13,25843.95,26010.7,25808.4,25884.1,166.75,35.54999999999927,78.67378928776296,67.05446226149067
62
+ 2025-11-14,25810.7,25940.2,25740.8,25916.8,129.5,69.90000000000146,73.19872933440267,87.55904589996446
63
+ 2025-11-17,25951.05,26024.2,25906.35,26014.3,73.15000000000146,44.70000000000073,69.76315356672858,97.59555559580077
64
+ 2025-11-18,25947.35,26029.85,25876.5,25894.7,82.5,70.84999999999854,85.51147346645418,80.55471837004212
65
+ 2025-11-19,25857.5,26074.65,25856.2,26052.7,217.15000000000146,1.2999999999992724,80.68382090556915,94.60263251195181
66
+ 2025-11-20,26099.7,26246.65,26063.2,26197.4,146.95000000000073,36.5,70.58602673534355,77.26577489877992
67
+ 2025-11-21,26138.75,26179.2,26052.2,26063.95,40.45000000000073,86.54999999999927,72.78494759917074,88.50537506994732
68
+ 2025-11-24,26097.25,26142.8,25912.15,25943.35,45.54999999999927,185.09999999999854,71.59439136628663,98.01259127172162
69
+ 2025-11-25,25965.0,26032.6,25857.5,25860.3,67.59999999999854,107.5,74.81866080624437,97.64266493121366
70
+ 2025-11-26,25969.7,26215.15,25842.95,26203.5,245.45000000000073,126.75,90.3814582306311,86.97774096205734
71
+ 2025-11-27,26251.95,26310.45,26141.9,26219.85,58.5,110.04999999999927,71.40800619164884,75.89199618666595
72
+ 2025-11-28,26242.15,26280.75,26172.4,26204.55,38.599999999998545,69.75,72.7899189230503,68.94343157609912
73
+ 2025-12-01,26285.3,26325.8,26124.2,26175.95,40.5,161.09999999999854,70.47431107358459,75.68478873086691
74
+ 2025-12-02,26141.5,26154.6,25997.85,26057.0,13.099999999998545,143.65000000000146,74.4344525604593,86.98101762857138
75
+ 2025-12-03,26031.25,26066.45,25891.0,25985.1,35.20000000000073,140.25,70.95415206130762,80.43735765423229
76
+ 2025-12-04,25949.55,26098.25,25938.95,26017.1,148.70000000000073,10.599999999998545,70.73708673203622,80.01080718413094
77
+ 2025-12-05,26051.05,26202.6,25985.35,26176.65,151.54999999999927,65.70000000000073,72.41683194442193,96.03195181892916
78
+ 2025-12-08,26159.7,26178.7,25892.25,25932.8,19.0,267.4500000000007,69.67299117722322,81.02444831648698
79
+ 2025-12-09,25819.8,25923.65,25728.0,25841.75,103.85000000000218,91.79999999999927,77.47469251817466,95.02942758445397
80
+ 2025-12-10,25880.55,25947.65,25734.55,25742.65,67.10000000000218,146.0,71.70553491482723,98.1837081927547
81
+ 2025-12-11,25757.1,25922.8,25693.25,25898.4,165.70000000000073,63.849999999998545,76.56354511911341,101.94574105996686
82
+ 2025-12-12,26002.55,26057.6,25938.45,26043.0,55.04999999999927,64.09999999999854,69.67619298888475,79.50154765698446
83
+ 2025-12-15,25953.3,26047.15,25904.75,26014.0,93.85000000000218,48.54999999999927,75.17828185471886,76.85009428534134
84
+ 2025-12-16,25943.3,25980.75,25834.35,25851.35,37.45000000000073,108.95000000000073,71.27112421993293,81.85242825234664
85
+ 2025-12-17,25872.6,25929.15,25770.35,25821.8,56.55000000000291,102.25,72.35835339450391,87.43541006469988
86
+ 2025-12-18,25777.75,25902.35,25726.3,25815.65,124.59999999999854,51.45000000000073,74.43183502860306,85.33298803694375
87
+ 2025-12-19,25925.1,25993.35,25880.45,25961.4,68.25,44.64999999999782,70.77069567565373,83.78604666129061
88
+ 2025-12-22,26093.9,26180.7,26047.8,26162.75,86.79999999999927,46.10000000000218,70.42228403925822,72.76339644091539
89
+ 2025-12-23,26166.7,26233.55,26119.05,26165.95,66.84999999999854,47.650000000001455,74.84971589574519,69.426936900949
90
+ 2025-12-24,26198.25,26236.4,26123.0,26141.65,38.150000000001455,75.25,71.48754603427759,73.72186108153664
91
+ 2025-12-26,26131.05,26144.2,26008.6,26047.65,13.150000000001455,122.45000000000073,45.48128688932305,57.062560579537895
92
+ 2025-12-29,26050.5,26106.8,25920.3,25949.8,56.29999999999927,130.20000000000073,75.70015606822022,78.00564702749449
93
+ 2025-12-30,25908.05,25976.75,25878.0,25970.55,68.70000000000073,30.049999999999272,75.2522086126314,77.13518357533343
94
+ 2025-12-31,26013.65,26187.95,25969.0,26141.85,174.29999999999927,44.650000000001455,73.24189431613242,73.79354269787787
95
+ 2026-01-01,26167.8,26197.55,26113.4,26140.25,29.75,54.39999999999782,71.71010503029348,73.54519160205173
96
+ 2026-01-02,26181.65,26340.0,26118.4,26335.7,158.34999999999854,63.25,45.480429907888656,57.12647950293099
97
+ 2026-01-05,26340.25,26373.2,26210.05,26244.65,32.95000000000073,130.20000000000073,70.46179801639443,81.45276466292157
98
+ 2026-01-06,26195.8,26273.95,26124.75,26174.65,78.15000000000146,71.04999999999927,79.36914045104106,92.38591642666191
99
+ 2026-01-07,26125.65,26187.15,26067.9,26142.9,61.5,57.75,72.55581417361594,83.15694141096833
100
+ 2026-01-08,26123.25,26133.2,25858.45,25868.9,9.950000000000728,264.7999999999993,71.04783101366327,82.46291134118252
101
+ 2026-01-09,25938.8,25940.6,25623.0,25703.7,1.7999999999992724,315.7999999999993,86.53974081668476,121.44759821661057
102
+ 2026-01-12,25611.95,25813.15,25473.4,25806.1,201.20000000000073,138.54999999999927,83.95949739270267,120.28936873981168
103
+ 2026-01-13,25846.25,25899.8,25603.3,25714.2,53.54999999999927,242.95000000000073,78.19680117941645,84.9829292741713
104
+ 2026-01-14,25683.25,25791.75,25603.95,25669.1,108.5,79.29999999999927,82.35604656222411,99.82529425771892
105
+ 2026-01-16,25730.45,25873.5,25662.4,25701.9,143.04999999999927,68.04999999999927,72.2288158291699,96.07795888190775
106
+ 2026-01-19,25597.4,25653.3,25494.35,25555.5,55.89999999999782,103.05000000000291,93.52077464705306,93.8292063036645
107
+ 2026-01-20,25558.25,25585.0,25171.35,25225.35,26.75,386.90000000000146,76.71942144430174,79.78554817218038
108
+ 2026-01-21,25242.4,25300.95,24919.8,25168.1,58.54999999999927,322.6000000000022,130.94997110273525,147.75173361890398
109
+ 2026-01-22,25318.0,25435.75,25168.5,25320.45,117.75,149.5,85.07263391734676,130.19406357107007
110
+ 2026-01-23,25275.3,25347.95,25025.3,25064.75,72.65000000000146,250.0,86.95616205286174,98.93004959582946
111
+ 2026-01-27,25009.95,25246.65,24932.55,25234.1,236.70000000000073,77.40000000000146,110.68260525851476,129.7114495843547
112
+ 2026-01-28,25336.3,25372.1,25187.65,25348.05,35.79999999999927,148.64999999999782,89.71179240489799,109.83708610878165
113
+ 2026-01-29,25280.55,25458.15,25159.8,25422.1,177.60000000000218,120.75,91.59350021026472,87.43822382386271
114
+ 2026-01-30,25259.3,25370.7,25213.65,25315.8,111.40000000000146,45.64999999999782,79.05064818970524,100.1312421862931
115
+ 2026-02-01,25282.8,25440.9,24571.75,24768.0,158.10000000000218,711.0499999999993,80.05582527903351,87.1593675112166
116
+ 2026-02-02,24806.35,25108.1,24679.4,25079.9,301.75,126.94999999999709,86.6858901745076,81.9244305205442
117
+ 2026-02-03,25809.75,26341.2,25641.3,25714.8,531.4500000000007,168.45000000000073,209.3466476279516,140.6950158750343
118
+ 2026-02-04,25710.7,25818.55,25563.95,25737.5,107.84999999999854,146.75,123.34674640202677,112.15100241628755
119
+ 2026-02-05,25727.35,25757.65,25579.5,25641.6,30.30000000000291,147.84999999999854,78.92667069768866,93.48294833342887
120
+ 2026-02-06,25603.5,25703.95,25491.9,25673.6,100.45000000000073,111.59999999999854,81.63730431628646,108.84971109953882
121
+ 2026-02-09,25815.55,25922.25,25780.9,25863.3,106.70000000000073,34.64999999999782,97.04614278500875,83.38428889831818
122
+ 2026-02-10,25918.05,25989.45,25870.45,25916.8,71.40000000000146,47.599999999998545,72.55379470719815,80.47042331164333
123
+ 2026-02-11,25985.0,26009.4,25899.8,25945.35,24.400000000001455,85.20000000000073,70.82761961162062,78.822407881009
124
+ 2026-02-12,25855.25,25906.7,25752.4,25796.15,51.45000000000073,102.84999999999854,74.42962687752149,69.6320381757916
125
+ 2026-02-13,25596.4,25630.35,25444.3,25460.55,33.94999999999709,152.10000000000218,78.73111917226437,92.65335041306251
126
+ 2026-02-16,25472.2,25697.0,25372.7,25682.45,224.79999999999927,99.5,87.51077339277226,135.77441133340997
127
+ 2026-02-17,25612.45,25764.4,25570.3,25716.0,151.95000000000073,42.150000000001455,74.20532764340571,70.59556735334088
128
+ 2026-02-18,25742.05,25828.05,25645.15,25805.7,86.0,96.89999999999782,69.60174388514015,87.14731231617911
129
+ 2026-02-19,25853.9,25885.3,25388.75,25416.45,31.399999999997817,465.15000000000146,72.82233481769892,77.47993082146262
130
+ 2026-02-20,25452.9,25663.55,25379.75,25565.9,210.64999999999782,73.15000000000146,101.23325383545429,120.39677579437908
131
+ 2026-02-23,25698.35,25771.45,25609.35,25704.0,73.10000000000218,89.0,78.13994225569839,102.68054122730979
132
+ 2026-02-24,25570.55,25641.8,25327.6,25460.25,71.25,242.95000000000073,84.66998953575761,78.35520991871599
133
+ 2026-02-25,25561.8,25652.6,25428.2,25478.65,90.79999999999927,133.59999999999854,78.48076576983638,96.14961930214675
134
+ 2026-02-26,25535.1,25572.95,25400.95,25493.3,37.85000000000218,134.14999999999782,73.42761359209224,92.16432309346206
135
+ 2026-02-27,25395.4,25476.4,25141.3,25181.8,81.0,254.10000000000218,84.86928109002694,89.3313420570492
136
+ 2026-03-02,24892.95,24989.35,24603.5,24849.75,96.39999999999782,289.4500000000007,111.27759797579716,107.15701801512222
137
+ 2026-03-04,24385.1,24602.45,24305.4,24473.95,217.35000000000218,79.69999999999709,133.72126269580576,155.30789682765342
138
+ 2026-03-05,24584.85,24854.2,24529.4,24737.45,269.3500000000022,55.44999999999709,162.08234784984276,162.40605803165704
139
+ 2026-03-06,24594.4,24700.9,24415.75,24469.4,106.5,178.65000000000146,117.98380433944611,116.83602544783805
140
+ 2026-03-09,23774.35,24078.15,23697.8,24005.8,303.8000000000029,76.54999999999927,192.35915867956317,146.88020524223515
141
+ 2026-03-10,24149.0,24303.8,24079.95,24286.15,154.79999999999927,69.04999999999927,192.79377380977922,158.9186209194774
142
+ 2026-03-11,24285.9,24299.0,23834.3,23848.2,13.099999999998545,451.6000000000022,133.54653076939334,121.19414544015564
143
+ 2026-03-12,23563.15,23833.15,23556.3,23639.35,270.0,6.850000000002183,192.63588830558837,120.53074403063889
144
+ 2026-03-13,23450.25,23492.4,23112.0,23170.9,42.150000000001455,338.25,145.7091162926563,146.68104013479658
145
+ 2026-03-16,23172.55,23502.0,22955.25,23355.6,329.4500000000007,217.29999999999927,170.38500881814582,207.84422103932636
146
+ 2026-03-17,23395.55,23656.8,23346.6,23558.8,261.25,48.95000000000073,156.7943098659703,149.21233378254283
147
+ 2026-03-18,23721.9,23862.25,23618.45,23764.1,140.34999999999854,103.45000000000073,121.95109115304878,116.42727703008954
148
+ 2026-03-19,23289.5,23378.7,22930.35,23087.85,89.20000000000073,359.15000000000146,133.90428933906327,137.31867907141645
149
+ 2026-03-20,23281.5,23345.15,23067.6,23134.65,63.650000000001455,213.90000000000146,159.7676630786322,165.0265464253639
150
+ 2026-03-23,22687.45,22851.7,22471.25,22492.65,164.25,216.20000000000073,145.85353407241462,152.4341252582677
151
+ 2026-03-24,22785.15,23057.3,22624.2,22958.4,272.1499999999978,160.95000000000073,207.01095264874107,154.6488830452536
152
+ 2026-03-25,23162.6,23465.35,23063.2,23309.0,302.75,99.39999999999782,132.30015580160267,124.7102392167061
153
+ 2026-03-27,23041.8,23186.1,22804.55,22839.5,144.29999999999927,237.25,138.49642324859562,132.77812683059364
154
+ 2026-03-30,22522.45,22714.1,22283.85,22379.2,191.64999999999782,238.60000000000218,137.43517166951938,113.26298404384518
155
+ 2026-04-01,22887.0,22941.3,22618.6,22703.15,54.29999999999927,268.40000000000146,171.94720651853035,142.51587723198915
156
+ 2026-04-02,22228.0,22782.3,22182.55,22700.7,554.2999999999993,45.45000000000073,157.50885517232763,135.03847736028655
157
+ 2026-04-06,22666.05,22998.35,22542.95,22959.45,332.2999999999993,123.09999999999854,144.97157821899438,110.86736478379764
158
+ 2026-04-07,22773.05,23153.85,22719.3,23129.95,380.7999999999993,53.75,111.37572308047561,120.98351003129397
159
+ 2026-04-08,23899.95,23961.25,23837.65,23892.75,61.29999999999927,62.29999999999927,102.28015924968139,103.1134383545202
160
+ 2026-04-09,23935.650390625,23989.75,23683.349609375,23766.05078125,54.099609375,252.30078125,97.56128839578805,120.80458797190984
161
+ 2026-04-10,23965.69921875,24073.80078125,23867.19921875,24051.80078125,108.1015625,98.5,85.23780890426106,116.17509968142505
162
+ 2026-04-13,23578.55078125,23905.650390625,23556.150390625,23818.900390625,327.099609375,22.400390625,101.5126595166479,98.57767387007569
163
+ 2026-04-15,24230.849609375,24273.150390625,24146.69921875,24211.900390625,42.30078125,84.150390625,87.99325993978478,100.5389864062017
164
+ 2026-04-16,24390.55078125,24400.099609375,24103.099609375,24188.400390625,9.548828125,287.451171875,75.10031206149125,96.78284688386456
165
+ 2026-04-17,24207.55078125,24370.25,24109.44921875,24366.900390625,162.69921875,98.1015625,93.875672724558,113.6195855929118
166
+ 2026-04-20,24373.099609375,24394.05078125,24318.0,24330.900390625,20.951171875,55.099609375,74.03118715657969,70.17966380671794
167
+ 2026-04-21,24468.849609375,24600.849609375,24357.150390625,24581.05078125,132.0,111.69921875,86.20844571936449,102.2667119048698
168
+ 2026-04-22,24479.30078125,24515.75,24353.69921875,24367.650390625,36.44921875,125.6015625,78.71803618671171,105.18692808784276
169
+ 2026-04-23,24201.349609375,24309.900390625,24138.849609375,24156.05078125,108.55078125,62.5,84.05594012758098,99.00734685037857
170
+ 2026-04-24,24124.19921875,24203.349609375,23815.349609375,23903.94921875,79.150390625,308.849609375,90.14180250621698,136.87579336691633
171
+ 2026-04-27,24020.349609375,24130.30078125,23952.0,24110.19921875,109.951171875,68.349609375,99.59614157374158,118.31424726361337
172
+ 2026-04-28,24093.849609375,24181.75,23958.05078125,24016.5,87.900390625,135.798828125,88.15968826749,106.64812371296172
173
+ 2026-04-29,24090.80078125,24334.19921875,24060.650390625,24163.599609375,243.3984375,30.150390625,87.90088049432329,124.95795081910784
174
+ 2026-04-30,23945.25,24086.94921875,23797.05078125,23997.55078125,141.69921875,148.19921875,139.48308205556245,111.61338896287434
175
+ 2026-05-04,24177.05078125,24289.19921875,24005.30078125,24119.30078125,112.1484375,171.75,147.62463980491148,110.82979739572832
176
+ 2026-05-05,24064.19921875,24080.94921875,23883.5,24032.80078125,16.75,180.69921875,104.19136737845045,118.00286130314204
177
+ 2026-05-06,24175.80078125,24355.55078125,23999.0,24330.94921875,179.75,176.80078125,89.34877716071158,100.09239323156596
178
+ 2026-05-07,24318.25,24481.94921875,24284.650390625,24326.650390625,163.69921875,33.599609375,144.18742265088838,101.03766931638431
179
+ 2026-05-08,24219.30078125,24253.44921875,24127.69921875,24176.150390625,34.1484375,91.6015625,113.44501924079982,105.61263750990524
180
+ 2026-05-11,23918.75,23997.0,23801.25,23820.349609375,78.25,117.5,115.09320335959805,89.86773115957116
181
+ 2026-05-12,23736.900390625,23754.150390625,23349.099609375,23430.55078125,17.25,387.80078125,116.96920740241298,142.73344731125428
182
+ 2026-05-13,23405.400390625,23582.80078125,23263.05078125,23428.69921875,177.400390625,142.349609375,175.97531700031948,150.41964833343525
183
+ 2026-05-14,23550.05078125,23776.650390625,23426.849609375,23713.75,226.599609375,123.201171875,172.47993492418186,120.64942388533477
184
+ 2026-05-15,23718.900390625,23838.94921875,23610.80078125,23643.5,120.048828125,108.099609375,116.92088358715652,117.22659612227842
185
+ 2026-05-18,23400.5,23695.400390625,23317.55078125,23644.44921875,294.900390625,82.94921875,122.25057682854033,99.44379095807834
186
+ 2026-05-19,23735.099609375,23782.19921875,23587.25,23606.150390625,47.099609375,147.849609375,89.25678651875887,118.20882442942839
187
+ 2026-05-20,23460.650390625,23690.75,23403.75,23664.349609375,230.099609375,56.900390625,90.6801349163642,107.62981114189009
188
+ 2026-05-21,23766.849609375,23859.150390625,23596.849609375,23654.69921875,92.30078125,170.0,143.97390699531186,119.33033220862224
189
+ 2026-05-22,23693.5,23835.599609375,23675.349609375,23748.849609375,142.099609375,18.150390625,110.33583365759179,101.93356091893207
190
+ 2026-05-25,23967.599609375,24054.400390625,23924.400390625,24049.900390625,86.80078125,43.19921875,94.48529797429143,78.70386364984326
191
+ 2026-05-26,24012.55078125,24089.55078125,23885.44921875,23933.75,77.0,127.1015625,79.73076033164853,83.18524021655392
192
+ 2026-05-27,23926.349609375,23983.0,23858.55078125,23907.150390625,56.650390625,67.798828125,82.86160430091547,111.90618562168372
193
+ 2026-05-29,23963.30078125,23998.69921875,23486.599609375,23547.75,35.3984375,476.701171875,103.19623464475224,101.30160095874687
194
+ 2026-06-01,23633.0,23727.650390625,23358.150390625,23379.19921875,94.650390625,274.849609375,147.97873066706777,108.07717150797622
195
+ 2026-06-02,23283.19921875,23556.599609375,23229.150390625,23520.69921875,273.400390625,54.048828125,104.11710291744272,127.52289995410068
196
+ 2026-06-03,23299.30078125,23459.349609375,23152.150390625,23396.94921875,160.048828125,147.150390625,119.81095584527132,121.31295450722715
197
+ 2026-06-04,23345.900390625,23465.150390625,23249.599609375,23416.55078125,119.25,96.30078125,96.45685811732439,123.15485148279662
198
+ 2026-06-05,23456.150390625,23513.650390625,23282.80078125,23366.69921875,57.5,173.349609375,113.41119571155153,102.86641440643322
199
+ 2026-06-08,23130.55078125,23266.849609375,23071.5,23123.0,136.298828125,59.05078125,71.99673733444993,66.32122469457533
200
+ 2026-06-09,23234.849609375,23279.349609375,23105.099609375,23242.099609375,44.5,129.75,63.15162391627527,71.57884869143409
models/nifty_opening_mfe_regressor/outputs/training_dataset.csv ADDED
The diff for this file is too large to render. See raw diff
 
models/nifty_tomorrow_direction_model.joblib CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:d2cbdd5ddd3d2e8936acda927bd12b2eced27b84fd851e6fffcdb851cd3cf60e
3
- size 446
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3f85e6c350c08b034bc1f340adc90c85f4d4c15c462d96ad1be5bd340c26cdf3
3
+ size 443
models/tomorrow_latest_prediction.csv CHANGED
@@ -1,2 +1,2 @@
1
- input_date,target_date,prediction,prob_up,confidence,threshold,model_name,source_model,validation_accuracy,test_accuracy,artifact_source
2
- 2026-06-09,2026-06-10,UP,0.5295140762033614,0.5295140762033614,0.534,nifty_tomorrow_direction_model,locked_multiwindow_nifty50_ensemble_v2,0.5886524822695035,0.7070707070707071,C:\Users\jhaji\Downloads\forecasting project\Code\models\nifty_forecaster\outputs
 
1
+ input_date,target_date,prediction,prob_up,confidence,threshold,model_name,source_model,validation_accuracy,test_accuracy,source
2
+ 2026-06-11,2026-06-12,DOWN,0.46778826961945674,0.5322117303805433,0.534,nifty_tomorrow_direction_model,locked_multiwindow_nifty50_ensemble_v2,0.5886524822695035,0.7070707070707071,live
models/tomorrow_prediction_history.parquet ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:89f100aced6b7ff9d8d0c5cd0ce10a00e5a402bbf935949fac103b8a33d0dbca
3
+ size 8273
models/tomorrow_summary.json CHANGED
@@ -38,5 +38,5 @@
38
  "source_model": "locked_multiwindow_nifty50_ensemble_v2",
39
  "target": "next trading session NIFTY 50 direction",
40
  "artifact_type": "daily_forecaster_outputs",
41
- "artifact_source": "C:\\Users\\jhaji\\Downloads\\forecasting project\\Code\\models\\nifty_forecaster\\outputs"
42
  }
 
38
  "source_model": "locked_multiwindow_nifty50_ensemble_v2",
39
  "target": "next trading session NIFTY 50 direction",
40
  "artifact_type": "daily_forecaster_outputs",
41
+ "artifact_source": "C:\\Users\\jhaji\\Downloads\\Nifty project\\backend\\models\\nifty_forecaster\\outputs"
42
  }
models/yahoo_history_cache.sqlite3 CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:1dcb91ddef71b32d679585287872891cb4f4ddc992b8d3c3659989829323a454
3
- size 225280
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:4201ea94391261e3c31da54bce05af3c3d3cac6672804f91acea5bf15a53b2d3
3
+ size 233472
runtime.py CHANGED
@@ -55,6 +55,11 @@ DAILY_FORECASTER_OUTPUT_DIR = MODEL_DIR / "nifty_forecaster" / "outputs"
55
  DAILY_FORECASTER_SUMMARY_PATH = DAILY_FORECASTER_OUTPUT_DIR / "forecaster_summary.json"
56
  DAILY_FORECASTER_LATEST_PATH = DAILY_FORECASTER_OUTPUT_DIR / "forecaster_latest.csv"
57
  DAILY_FORECASTER_PREDICTIONS_PATH = DAILY_FORECASTER_OUTPUT_DIR / "forecaster_test_predictions.csv"
 
 
 
 
 
58
  TPLUS1_MODEL_PATH = MODEL_DIR / "nifty_1420_tplus1_logistic_model.joblib"
59
  TPLUS1_LATEST_PATH = MODEL_DIR / "tplus1_latest_prediction.csv"
60
  TPLUS1_SUMMARY_PATH = MODEL_DIR / "tplus1_summary.json"
@@ -1239,6 +1244,122 @@ def load_tplus1_test_predictions() -> pd.DataFrame:
1239
  return df.sort_values("date").reset_index(drop=True)
1240
 
1241
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1242
  def dashboard_payload() -> dict[str, Any]:
1243
  key = (
1244
  _file_cache_key(MODEL_DIR / "summary.json"),
@@ -1259,20 +1380,12 @@ def dashboard_payload() -> dict[str, Any]:
1259
  _file_cache_key(NIFTY_1M_PATH),
1260
  _file_cache_key(LIVE_ACCURACY_PATH),
1261
  _file_cache_key(TOMORROW_PREDICTION_HISTORY_PATH),
 
 
 
1262
  )
1263
  with _dashboard_payload_lock:
1264
- payload = copy.deepcopy(_dashboard_payload_cached(key))
1265
- # Always rebuild track record (fresh Yahoo daily + calendar window), never serve from LRU cache.
1266
- track_record = build_prediction_track_record(sessions=10)
1267
- payload["charts"]["track_record"] = track_record
1268
- payload["charts"]["track_record_meta"] = {
1269
- "builder": "rolling_v1",
1270
- "sessions": 10,
1271
- "count": len(track_record),
1272
- "start": track_record[0]["date"] if track_record else None,
1273
- "end": track_record[-1]["date"] if track_record else None,
1274
- }
1275
- return payload
1276
 
1277
 
1278
  def warm_dashboard_payload_cache() -> None:
@@ -1528,10 +1641,12 @@ def _dashboard_payload_cached(key: tuple[tuple[str, int | None, int | None], ...
1528
  "total_test_days": int(tomorrow_summary.get("n_test") or len(tomorrow_test) or 0),
1529
  "models": model_metrics,
1530
  }
 
1531
  return {
1532
  "latest": t5_latest,
1533
  "tomorrow_latest": tomorrow_latest,
1534
  "tplus1_latest": tplus1_latest,
 
1535
  "live_accuracy": load_live_accuracy(),
1536
  "metrics": metrics,
1537
  "summary": summary,
@@ -1548,7 +1663,7 @@ def _dashboard_payload_cached(key: tuple[tuple[str, int | None, int | None], ...
1548
  "tomorrow_recent_predictions": _json_ready_frame(tomorrow_recent),
1549
  "tomorrow_history_predictions": _json_ready_frame(tomorrow_history.tail(80)),
1550
  "tplus1_recent_predictions": _json_ready_frame(tplus1_test.tail(40)),
1551
- "track_record": [],
1552
  },
1553
  "data_status": {
1554
  "nifty_1m_rows": int(len(pd.read_parquet(NIFTY_1M_PATH, columns=["date"]))),
 
55
  DAILY_FORECASTER_SUMMARY_PATH = DAILY_FORECASTER_OUTPUT_DIR / "forecaster_summary.json"
56
  DAILY_FORECASTER_LATEST_PATH = DAILY_FORECASTER_OUTPUT_DIR / "forecaster_latest.csv"
57
  DAILY_FORECASTER_PREDICTIONS_PATH = DAILY_FORECASTER_OUTPUT_DIR / "forecaster_test_predictions.csv"
58
+ MFE_SOURCE_OUTPUT_DIR = FORECASTING_PROJECT_ROOT / "Code" / "models" / "nifty_opening_mfe_regressor" / "outputs"
59
+ MFE_OUTPUT_DIR = MODEL_DIR / "nifty_opening_mfe_regressor" / "outputs"
60
+ MFE_SUMMARY_PATH = MFE_OUTPUT_DIR / "summary.json"
61
+ MFE_LATEST_PATH = MFE_OUTPUT_DIR / "latest_prediction.csv"
62
+ MFE_TEST_PREDICTIONS_PATH = MFE_OUTPUT_DIR / "test_predictions.csv"
63
  TPLUS1_MODEL_PATH = MODEL_DIR / "nifty_1420_tplus1_logistic_model.joblib"
64
  TPLUS1_LATEST_PATH = MODEL_DIR / "tplus1_latest_prediction.csv"
65
  TPLUS1_SUMMARY_PATH = MODEL_DIR / "tplus1_summary.json"
 
1244
  return df.sort_values("date").reset_index(drop=True)
1245
 
1246
 
1247
+ def sync_mfe_outputs() -> bool:
1248
+ """Refresh bundled MFE artifacts from the forecasting project when available."""
1249
+ if not MFE_SOURCE_OUTPUT_DIR.exists():
1250
+ return MFE_SUMMARY_PATH.exists()
1251
+ MFE_OUTPUT_DIR.mkdir(parents=True, exist_ok=True)
1252
+ synced = False
1253
+ for name in ("summary.json", "latest_prediction.csv", "test_predictions.csv"):
1254
+ source = MFE_SOURCE_OUTPUT_DIR / name
1255
+ target = MFE_OUTPUT_DIR / name
1256
+ if not source.exists():
1257
+ continue
1258
+ if not target.exists() or source.stat().st_mtime > target.stat().st_mtime:
1259
+ target.write_bytes(source.read_bytes())
1260
+ synced = True
1261
+ return synced or MFE_SUMMARY_PATH.exists()
1262
+
1263
+
1264
+ def load_mfe_summary() -> dict[str, Any]:
1265
+ sync_mfe_outputs()
1266
+ if not MFE_SUMMARY_PATH.exists():
1267
+ return {}
1268
+ try:
1269
+ return json.loads(MFE_SUMMARY_PATH.read_text(encoding="utf-8"))
1270
+ except Exception:
1271
+ return {}
1272
+
1273
+
1274
+ def load_mfe_latest() -> dict[str, Any]:
1275
+ sync_mfe_outputs()
1276
+ summary = load_mfe_summary()
1277
+ if MFE_LATEST_PATH.exists():
1278
+ try:
1279
+ row = pd.read_csv(MFE_LATEST_PATH).iloc[-1].to_dict()
1280
+ up_pts = float(row.get("predicted_up_points", summary.get("latest_predicted_up_points", 0)))
1281
+ down_pts = float(row.get("predicted_down_points", summary.get("latest_predicted_down_points", 0)))
1282
+ return {
1283
+ "input_date": str(row.get("input_date") or summary.get("latest_input_date", ""))[:10],
1284
+ "first5_start": row.get("first5_start") or summary.get("latest_first5_start"),
1285
+ "first5_end": row.get("first5_end") or summary.get("latest_first5_end"),
1286
+ "first5_close": float(row.get("first5_close") or summary.get("latest_first5_close") or 0),
1287
+ "predicted_up_points": up_pts,
1288
+ "predicted_down_points": down_pts,
1289
+ "dominant_side": "UP" if up_pts >= down_pts else "DOWN",
1290
+ }
1291
+ except Exception:
1292
+ pass
1293
+ if summary:
1294
+ up_pts = float(summary.get("latest_predicted_up_points", 0))
1295
+ down_pts = float(summary.get("latest_predicted_down_points", 0))
1296
+ return {
1297
+ "input_date": str(summary.get("latest_input_date", ""))[:10],
1298
+ "first5_start": summary.get("latest_first5_start"),
1299
+ "first5_end": summary.get("latest_first5_end"),
1300
+ "first5_close": float(summary.get("latest_first5_close") or 0),
1301
+ "predicted_up_points": up_pts,
1302
+ "predicted_down_points": down_pts,
1303
+ "dominant_side": "UP" if up_pts >= down_pts else "DOWN",
1304
+ }
1305
+ return {}
1306
+
1307
+
1308
+ def load_mfe_backtest() -> pd.DataFrame:
1309
+ sync_mfe_outputs()
1310
+ if not MFE_TEST_PREDICTIONS_PATH.exists():
1311
+ return pd.DataFrame()
1312
+ frame = pd.read_csv(MFE_TEST_PREDICTIONS_PATH)
1313
+ frame["date"] = pd.to_datetime(frame["date"], errors="coerce")
1314
+ return frame.dropna(subset=["date"]).sort_values("date").reset_index(drop=True)
1315
+
1316
+
1317
+ def build_mfe_payload() -> dict[str, Any]:
1318
+ summary = load_mfe_summary()
1319
+ latest = load_mfe_latest()
1320
+ backtest = load_mfe_backtest()
1321
+ up = summary.get("up", {}) if isinstance(summary.get("up"), dict) else {}
1322
+ down = summary.get("down", {}) if isinstance(summary.get("down"), dict) else {}
1323
+ baseline_rmse_up = None
1324
+ baseline_rmse_down = None
1325
+ if not backtest.empty:
1326
+ if "after5_up_points" in backtest.columns:
1327
+ actual_up = pd.to_numeric(backtest["after5_up_points"], errors="coerce").dropna()
1328
+ if not actual_up.empty:
1329
+ baseline_up = float(actual_up.median())
1330
+ baseline_rmse_up = float(np.sqrt(((actual_up - baseline_up) ** 2).mean()))
1331
+ if "after5_down_points" in backtest.columns:
1332
+ actual_down = pd.to_numeric(backtest["after5_down_points"], errors="coerce").dropna()
1333
+ if not actual_down.empty:
1334
+ baseline_down = float(actual_down.median())
1335
+ baseline_rmse_down = float(np.sqrt(((actual_down - baseline_down) ** 2).mean()))
1336
+ return {
1337
+ "available": bool(latest),
1338
+ "latest": latest,
1339
+ "metrics": {
1340
+ "up": {
1341
+ "rmse": up.get("test_rmse_points"),
1342
+ "baseline_rmse": baseline_rmse_up,
1343
+ "mae": up.get("test_mae_points"),
1344
+ "baseline_mae": up.get("baseline_test_mae_points"),
1345
+ },
1346
+ "down": {
1347
+ "rmse": down.get("test_rmse_points"),
1348
+ "baseline_rmse": baseline_rmse_down,
1349
+ "mae": down.get("test_mae_points"),
1350
+ "baseline_mae": down.get("baseline_test_mae_points"),
1351
+ },
1352
+ },
1353
+ "summary": {
1354
+ "target_definition": summary.get("target_definition"),
1355
+ "test_start": summary.get("test_start"),
1356
+ "test_end": summary.get("test_end"),
1357
+ "test_rows": summary.get("test_rows"),
1358
+ },
1359
+ "backtest": _json_ready_frame(backtest),
1360
+ }
1361
+
1362
+
1363
  def dashboard_payload() -> dict[str, Any]:
1364
  key = (
1365
  _file_cache_key(MODEL_DIR / "summary.json"),
 
1380
  _file_cache_key(NIFTY_1M_PATH),
1381
  _file_cache_key(LIVE_ACCURACY_PATH),
1382
  _file_cache_key(TOMORROW_PREDICTION_HISTORY_PATH),
1383
+ _file_cache_key(MFE_SUMMARY_PATH),
1384
+ _file_cache_key(MFE_LATEST_PATH),
1385
+ _file_cache_key(MFE_TEST_PREDICTIONS_PATH),
1386
  )
1387
  with _dashboard_payload_lock:
1388
+ return copy.deepcopy(_dashboard_payload_cached(key))
 
 
 
 
 
 
 
 
 
 
 
1389
 
1390
 
1391
  def warm_dashboard_payload_cache() -> None:
 
1641
  "total_test_days": int(tomorrow_summary.get("n_test") or len(tomorrow_test) or 0),
1642
  "models": model_metrics,
1643
  }
1644
+ mfe = build_mfe_payload()
1645
  return {
1646
  "latest": t5_latest,
1647
  "tomorrow_latest": tomorrow_latest,
1648
  "tplus1_latest": tplus1_latest,
1649
+ "mfe": mfe,
1650
  "live_accuracy": load_live_accuracy(),
1651
  "metrics": metrics,
1652
  "summary": summary,
 
1663
  "tomorrow_recent_predictions": _json_ready_frame(tomorrow_recent),
1664
  "tomorrow_history_predictions": _json_ready_frame(tomorrow_history.tail(80)),
1665
  "tplus1_recent_predictions": _json_ready_frame(tplus1_test.tail(40)),
1666
+ "mfe_backtest": mfe.get("backtest", []),
1667
  },
1668
  "data_status": {
1669
  "nifty_1m_rows": int(len(pd.read_parquet(NIFTY_1M_PATH, columns=["date"]))),