diff --git a/Cargo.toml b/Cargo.toml index 9e3458b..e5800ad 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -82,7 +82,7 @@ hyperliquid_rust_sdk = "0.6.0" rs-backtester = "0.1.2" # HTTP client -reqwest = { version = "0.11", features = ["json"] } +reqwest = { version = "0.11", default-features = false, features = ["json", "rustls-tls"] } # Logging and debugging log = "0.4" @@ -99,18 +99,21 @@ uuid = { version = "1.0", features = ["v4"] } # Temporary file handling tempfile = "3.8" -[dev-dependencies] -tokio-test = "0.4" -criterion = { version = "0.5", features = ["html_reports"] } -mockito = "1.2" -wiremock = "0.5" -proptest = "1.4" -memory-stats = "1.1" -sysinfo = "0.29" -futures = "0.3" -tempfile = "3.8" -tracing = "0.1" -tracing-subscriber = "0.3" +openssl = { version = "0.10", features = ["vendored"] } +openssl-sys = { version = "0.9", features = ["vendored"] } + +# [dev-dependencies] +# tokio-test = "0.4" +# criterion = { version = "0.5", features = ["html_reports"] } +# mockito = "1.2" +# wiremock = "0.5" +# proptest = "1.4" +# memory-stats = "1.1" +# sysinfo = "0.29" +# futures = "0.3" +# tempfile = "3.8" +# tracing = "0.1" +# tracing-subscriber = "0.3" [[example]] name = "mode_reporting_example" diff --git a/simple_backtest_results.csv b/simple_backtest_results.csv new file mode 100644 index 0000000..57c0076 --- /dev/null +++ b/simple_backtest_results.csv @@ -0,0 +1,170 @@ +Timestamp,Open,High,Low,Close,Volume,Funding Rate,Position,Trading PnL,Funding PnL,Total PnL,Equity +2025-07-24T18:00:00+00:00,119198,119494,118981,119121,905.83767,,0.0,0,0,0,10000 +2025-07-24T19:00:00+00:00,119122,119417,118978,119027,511.93912,,0.0,0,0,0,10000 +2025-07-24T20:00:00+00:00,119026,119069,118805,118806,565.51138,,0.0,0,0,0,10000 +2025-07-24T21:00:00+00:00,118806,118878,118570,118614,457.9157,,0.0,0,0,0,10000 +2025-07-24T22:00:00+00:00,118614,118711,118233,118349,730.18597,,0.0,0,0,0,10000 +2025-07-24T23:00:00+00:00,118349,118525,118220,118378,917.11456,,0.0,0,0,0,10000 +2025-07-25T00:00:00+00:00,118379,118530,117677,117733,1647.73381,,0.0,0,0,0,10000 +2025-07-25T01:00:00+00:00,117733,117848,117300,117456,1966.36261,,0.0,0,0,0,10000 +2025-07-25T02:00:00+00:00,117456,117474,116400,116410,5167.14861,,0.0,0,0,0,10000 +2025-07-25T03:00:00+00:00,116410,116498,115400,115541,7885.43797,,0.0,0,0,0,10000 +2025-07-25T04:00:00+00:00,115540,116267,115233,116214,4596.71283,,0.0,0,0,0,10000 +2025-07-25T05:00:00+00:00,116214,116214,115396,115629,2879.99465,,0.0,0,0,0,10000 +2025-07-25T06:00:00+00:00,115630,115634,115315,115436,713.47658,,0.0,0,0,0,10000 +2025-07-25T07:00:00+00:00,115435,116096,114860,115473,4586.57718,,0.0,0,0,0,10000 +2025-07-25T08:00:00+00:00,115474,116163,115172,115340,3474.26592,,0.0,0,0,0,10000 +2025-07-25T09:00:00+00:00,115341,116150,115086,116129,3502.85209,,0.0,0,0,0,10000 +2025-07-25T10:00:00+00:00,116129,116596,116080,116381,1564.2487,,0.0,0,0,0,10000 +2025-07-25T11:00:00+00:00,116381,116823,116381,116599,1393.24124,,0.0,0,0,0,10000 +2025-07-25T12:00:00+00:00,116600,116710,116002,116167,1516.52327,,0.0,0,0,0,10000 +2025-07-25T13:00:00+00:00,116168,116680,115637,116320,2137.2579,,0.0,0,0,0,10000 +2025-07-25T14:00:00+00:00,116320,116387,115008,115050,2338.79222,,0.0,0,0,0,10000 +2025-07-25T15:00:00+00:00,115050,115957,115007,115818,1402.63249,,0.0,0,0,0,10000 +2025-07-25T16:00:00+00:00,115818,116286,115536,116266,1147.49462,,0.0,0,0,0,10000 +2025-07-25T17:00:00+00:00,116266,116405,115932,116108,897.61976,,0.0,0,0,0,10000 +2025-07-25T18:00:00+00:00,116109,116640,116108,116573,713.6236,,0.0,0,0,0,10000 +2025-07-25T19:00:00+00:00,116573,117075,116484,116773,1030.65732,,0.0,0,0,0,10000 +2025-07-25T20:00:00+00:00,116773,117400,116617,117132,1978.43976,,0.0,0,0,0,10000 +2025-07-25T21:00:00+00:00,117133,117475,117050,117314,1339.35035,,0.0,0,0,0,10000 +2025-07-25T22:00:00+00:00,117314,117500,117214,117383,819.68257,,0.0,0,0,0,10000 +2025-07-25T23:00:00+00:00,117383,117750,117271,117726,1472.46219,,0.0,0,0,0,10000 +2025-07-26T00:00:00+00:00,117727,117727,117408,117597,1851.88527,,0.0,0,0,0,10000 +2025-07-26T01:00:00+00:00,117597,117650,117200,117224,1305.85835,,0.0,0,0,0,10000 +2025-07-26T02:00:00+00:00,117224,117851,117223,117557,773.6063,,0.0,0,0,0,10000 +2025-07-26T03:00:00+00:00,117558,117692,117545,117571,342.34921,,0.0,0,0,0,10000 +2025-07-26T04:00:00+00:00,117572,117620,117480,117575,216.38382,,0.0,0,0,0,10000 +2025-07-26T05:00:00+00:00,117575,117633,117497,117533,322.94952,,0.0,0,0,0,10000 +2025-07-26T06:00:00+00:00,117534,117541,117410,117438,216.27311,,0.0,0,0,0,10000 +2025-07-26T07:00:00+00:00,117438,117467,117407,117407,155.22821,,0.0,0,0,0,10000 +2025-07-26T08:00:00+00:00,117408,117700,117407,117639,305.1611,,0.0,0,0,0,10000 +2025-07-26T09:00:00+00:00,117640,117714,117528,117670,247.32626,,0.0,0,0,0,10000 +2025-07-26T10:00:00+00:00,117670,118328,117620,118059,1334.82939,,0.0,0,0,0,10000 +2025-07-26T11:00:00+00:00,118059,118166,117863,117864,485.59136,,0.0,0,0,0,10000 +2025-07-26T12:00:00+00:00,117863,118096,117847,117999,363.0678,,0.0,0,0,0,10000 +2025-07-26T13:00:00+00:00,117998,118322,117928,118220,433.35536,,0.0,0,0,0,10000 +2025-07-26T14:00:00+00:00,118219,118310,118034,118150,544.62427,,0.0,0,0,0,10000 +2025-07-26T15:00:00+00:00,118149,118241,117910,118210,951.1672,,0.0,0,0,0,10000 +2025-07-26T16:00:00+00:00,118210,118280,118081,118159,331.18365,,0.0,0,0,0,10000 +2025-07-26T17:00:00+00:00,118159,118175,118054,118093,185.12568,,0.0,0,0,0,10000 +2025-07-26T18:00:00+00:00,118094,118185,118000,118156,339.61709,,0.0,0,0,0,10000 +2025-07-26T19:00:00+00:00,118156,118354,118100,118307,490.27526,,0.0,0,0,0,10000 +2025-07-26T20:00:00+00:00,118307,118307,117950,118014,271.33963,,0.0,0,0,0,10000 +2025-07-26T21:00:00+00:00,118013,118144,117927,118102,441.13964,,0.0,0,0,0,10000 +2025-07-26T22:00:00+00:00,118101,118345,118040,118077,702.98007,,0.0,0,0,0,10000 +2025-07-26T23:00:00+00:00,118078,118111,117950,117960,316.77731,,0.0,0,0,0,10000 +2025-07-27T00:00:00+00:00,117961,118000,117862,117998,620.30715,,0.0,0,0,0,10000 +2025-07-27T01:00:00+00:00,117998,118250,117971,118156,520.42571,,0.0,0,0,0,10000 +2025-07-27T02:00:00+00:00,118156,118458,118062,118387,303.35289,,0.0,0,0,0,10000 +2025-07-27T03:00:00+00:00,118386,118387,118154,118243,196.84585,,0.0,0,0,0,10000 +2025-07-27T04:00:00+00:00,118243,118334,118209,118290,216.65013,,0.0,0,0,0,10000 +2025-07-27T05:00:00+00:00,118290,118374,118240,118350,130.11165,,0.0,0,0,0,10000 +2025-07-27T06:00:00+00:00,118350,118551,118268,118357,318.96157,,0.0,0,0,0,10000 +2025-07-27T07:00:00+00:00,118357,118357,118142,118184,211.76083,,0.0,0,0,0,10000 +2025-07-27T08:00:00+00:00,118184,118223,118052,118069,253.96139,,0.0,0,0,0,10000 +2025-07-27T09:00:00+00:00,118070,118098,117938,117995,488.92451,,0.0,0,0,0,10000 +2025-07-27T10:00:00+00:00,117995,118342,117994,118256,462.46076,,0.0,0,0,0,10000 +2025-07-27T11:00:00+00:00,118257,118306,118118,118145,221.56478,,0.0,0,0,0,10000 +2025-07-27T12:00:00+00:00,118144,118165,117894,118138,884.18663,,0.0,0,0,0,10000 +2025-07-27T13:00:00+00:00,118137,118289,118114,118250,745.91662,,0.0,0,0,0,10000 +2025-07-27T14:00:00+00:00,118249,118550,118207,118475,673.01307,,0.0,0,0,0,10000 +2025-07-27T15:00:00+00:00,118476,118673,118295,118669,1054.97957,,0.0,0,0,0,10000 +2025-07-27T16:00:00+00:00,118669,119621,118669,119152,2421.29443,,0.0,0,0,0,10000 +2025-07-27T17:00:00+00:00,119154,119409,118919,119292,780.04257,,0.0,0,0,0,10000 +2025-07-27T18:00:00+00:00,119292,119478,119028,119111,505.82683,,0.0,0,0,0,10000 +2025-07-27T19:00:00+00:00,119111,119167,118964,119036,407.77619,,0.0,0,0,0,10000 +2025-07-27T20:00:00+00:00,119035,119269,118795,118830,440.58074,,0.0,0,0,0,10000 +2025-07-27T21:00:00+00:00,118830,119373,118806,119371,454.17453,,0.0,0,0,0,10000 +2025-07-27T22:00:00+00:00,119371,119848,119316,119565,1519.43418,,0.0,0,0,0,10000 +2025-07-27T23:00:00+00:00,119566,119611,119250,119507,721.6425,,0.0,0,0,0,10000 +2025-07-28T00:00:00+00:00,119507,119790,119215,119339,811.84908,,0.0,0,0,0,10000 +2025-07-28T01:00:00+00:00,119340,119584,119036,119127,431.55091,,0.0,0,0,0,10000 +2025-07-28T02:00:00+00:00,119128,119934,119106,119531,535.87649,,0.0,0,0,0,10000 +2025-07-28T03:00:00+00:00,119531,119633,119327,119372,310.36356,,0.0,0,0,0,10000 +2025-07-28T04:00:00+00:00,119372,119521,119222,119303,224.56582,,0.0,0,0,0,10000 +2025-07-28T05:00:00+00:00,119303,119787,119232,119610,429.89488,,0.0,0,0,0,10000 +2025-07-28T06:00:00+00:00,119611,119715,119527,119550,393.24915,,0.0,0,0,0,10000 +2025-07-28T07:00:00+00:00,119550,119550,118837,118988,967.55048,,0.0,0,0,0,10000 +2025-07-28T08:00:00+00:00,118988,119181,118856,119159,417.15649,,0.0,0,0,0,10000 +2025-07-28T09:00:00+00:00,119160,119160,118785,119011,341.25762,,0.0,0,0,0,10000 +2025-07-28T10:00:00+00:00,119010,119045,118670,118841,366.65434,,0.0,0,0,0,10000 +2025-07-28T11:00:00+00:00,118840,118937,118550,118905,906.01201,,0.0,0,0,0,10000 +2025-07-28T12:00:00+00:00,118904,119182,118866,118922,765.18608,,0.0,0,0,0,10000 +2025-07-28T13:00:00+00:00,118921,119196,118312,118512,2833.86582,,0.0,0,0,0,10000 +2025-07-28T14:00:00+00:00,118512,118771,118006,118069,3085.66454,,0.0,0,0,0,10000 +2025-07-28T15:00:00+00:00,118069,118600,118000,118266,1033.95254,,0.0,0,0,0,10000 +2025-07-28T16:00:00+00:00,118267,118470,118074,118105,754.96246,,0.0,0,0,0,10000 +2025-07-28T17:00:00+00:00,118102,118220,117721,117732,2185.30518,,0.0,0,0,0,10000 +2025-07-28T18:00:00+00:00,117731,117960,117503,117872,2216.61597,,0.0,0,0,0,10000 +2025-07-28T19:00:00+00:00,117871,118338,117572,118149,2622.21091,,0.0,0,0,0,10000 +2025-07-28T20:00:00+00:00,118149,118256,117550,118132,2930.34441,,0.0,0,0,0,10000 +2025-07-28T21:00:00+00:00,118123,118427,118026,118180,700.10656,,0.0,0,0,0,10000 +2025-07-28T22:00:00+00:00,118181,118340,117777,117897,1336.39808,,0.0,0,0,0,10000 +2025-07-28T23:00:00+00:00,117905,118230,117871,118118,344.50325,,0.0,0,0,0,10000 +2025-07-29T00:00:00+00:00,118117,118580,117566,118017,1233.85758,,0.0,0,0,0,10000 +2025-07-29T01:00:00+00:00,118017,118288,117809,117810,376.18293,,0.0,0,0,0,10000 +2025-07-29T02:00:00+00:00,117810,118150,117456,118131,1203.79522,,0.0,0,0,0,10000 +2025-07-29T03:00:00+00:00,118131,118802,118131,118788,1139.81431,,0.0,0,0,0,10000 +2025-07-29T04:00:00+00:00,118796,118840,118444,118550,953.32556,,0.0,0,0,0,10000 +2025-07-29T05:00:00+00:00,118551,118896,118551,118837,333.15962,,0.0,0,0,0,10000 +2025-07-29T06:00:00+00:00,118838,119116,118759,118784,678.15584,,0.0,0,0,0,10000 +2025-07-29T07:00:00+00:00,118785,119339,118785,118945,1300.63847,,0.0,0,0,0,10000 +2025-07-29T08:00:00+00:00,118945,119125,118824,118969,681.54583,,0.0,0,0,0,10000 +2025-07-29T09:00:00+00:00,118975,119050,118822,118854,218.80211,,0.0,0,0,0,10000 +2025-07-29T10:00:00+00:00,118854,118905,118376,118377,811.35226,,0.0,0,0,0,10000 +2025-07-29T11:00:00+00:00,118377,118672,118223,118668,607.13576,,0.0,0,0,0,10000 +2025-07-29T12:00:00+00:00,118668,119200,118513,118982,1685.10147,,0.0,0,0,0,10000 +2025-07-29T13:00:00+00:00,118981,119099,118603,118706,816.71556,,0.0,0,0,0,10000 +2025-07-29T14:00:00+00:00,118710,118718,117763,117903,2775.59966,,0.0,0,0,0,10000 +2025-07-29T15:00:00+00:00,117903,118048,117302,117471,2564.48355,,0.0,0,0,0,10000 +2025-07-29T16:00:00+00:00,117470,117815,117003,117791,2544.17098,,0.0,0,0,0,10000 +2025-07-29T17:00:00+00:00,117792,118162,117687,117861,1279.31931,,0.0,0,0,0,10000 +2025-07-29T18:00:00+00:00,117861,117912,117551,117681,837.95213,,0.0,0,0,0,10000 +2025-07-29T19:00:00+00:00,117681,118088,117485,117607,899.33476,,0.0,0,0,0,10000 +2025-07-29T20:00:00+00:00,117607,117996,117109,117560,4702.86066,,0.0,0,0,0,10000 +2025-07-29T21:00:00+00:00,117559,117739,117212,117644,639.07374,,0.0,0,0,0,10000 +2025-07-29T22:00:00+00:00,117644,117887,117471,117887,694.56162,,0.0,0,0,0,10000 +2025-07-29T23:00:00+00:00,117886,118027,117759,117992,298.25021,,0.0,0,0,0,10000 +2025-07-30T00:00:00+00:00,117992,118027,117569,117786,808.78815,,0.0,0,0,0,10000 +2025-07-30T01:00:00+00:00,117787,118092,117444,117910,357.15925,,0.0,0,0,0,10000 +2025-07-30T02:00:00+00:00,117909,118150,117825,118062,292.85193,,0.0,0,0,0,10000 +2025-07-30T03:00:00+00:00,118062,118277,117939,118204,379.57825,,0.0,0,0,0,10000 +2025-07-30T04:00:00+00:00,118203,118328,118000,118040,322.91307,,0.0,0,0,0,10000 +2025-07-30T05:00:00+00:00,118040,118113,117703,118031,395.15244,,0.0,0,0,0,10000 +2025-07-30T06:00:00+00:00,118030,118372,118030,118335,283.42624,,0.0,0,0,0,10000 +2025-07-30T07:00:00+00:00,118335,118468,118145,118162,390.78769,,0.0,0,0,0,10000 +2025-07-30T08:00:00+00:00,118162,118533,117996,118452,650.42098,,0.0,0,0,0,10000 +2025-07-30T09:00:00+00:00,118453,118485,118031,118216,680.64885,,0.0,0,0,0,10000 +2025-07-30T10:00:00+00:00,118216,118461,117972,118045,862.961,,0.0,0,0,0,10000 +2025-07-30T11:00:00+00:00,118044,118212,117400,117571,1209.62578,,0.0,0,0,0,10000 +2025-07-30T12:00:00+00:00,117571,117939,117352,117768,1157.22301,,0.0,0,0,0,10000 +2025-07-30T13:00:00+00:00,117769,117897,117454,117703,1220.47294,,0.0,0,0,0,10000 +2025-07-30T14:00:00+00:00,117703,118758,117638,118758,1708.08464,,0.0,0,0,0,10000 +2025-07-30T15:00:00+00:00,118758,118848,117856,118033,1074.27642,,0.0,0,0,0,10000 +2025-07-30T16:00:00+00:00,118032,118056,117668,117769,775.38584,,0.0,0,0,0,10000 +2025-07-30T17:00:00+00:00,117771,117996,117680,117837,380.03128,,0.0,0,0,0,10000 +2025-07-30T18:00:00+00:00,117838,118107,116607,116608,3992.80883,,0.0,0,0,0,10000 +2025-07-30T19:00:00+00:00,116607,117181,115828,116982,6472.27747,,0.0,0,0,0,10000 +2025-07-30T20:00:00+00:00,116983,117394,116946,117263,1754.16455,,0.0,0,0,0,10000 +2025-07-30T21:00:00+00:00,117264,117422,117037,117414,647.85644,,0.0,0,0,0,10000 +2025-07-30T22:00:00+00:00,117415,117560,117324,117557,558.22786,,0.0,0,0,0,10000 +2025-07-30T23:00:00+00:00,117558,117997,117522,117915,583.55028,,0.0,0,0,0,10000 +2025-07-31T00:00:00+00:00,117915,118609,117858,118486,1608.52072,,0.0,0,0,0,10000 +2025-07-31T01:00:00+00:00,118487,118548,118064,118122,747.74414,,0.0,0,0,0,10000 +2025-07-31T02:00:00+00:00,118123,118598,118044,118556,1333.80838,,0.0,0,0,0,10000 +2025-07-31T03:00:00+00:00,118556,118757,118475,118548,321.93425,,0.0,0,0,0,10000 +2025-07-31T04:00:00+00:00,118558,118660,118445,118611,562.55946,,0.0,0,0,0,10000 +2025-07-31T05:00:00+00:00,118610,118635,118400,118429,522.48413,,0.0,0,0,0,10000 +2025-07-31T06:00:00+00:00,118428,118834,118376,118777,434.32132,,0.0,0,0,0,10000 +2025-07-31T07:00:00+00:00,118778,119027,118676,118761,938.40986,,0.0,0,0,0,10000 +2025-07-31T08:00:00+00:00,118760,118843,118650,118683,455.86879,,0.0,0,0,0,10000 +2025-07-31T09:00:00+00:00,118683,118700,118548,118681,209.61853,,0.0,0,0,0,10000 +2025-07-31T10:00:00+00:00,118681,118799,118502,118581,212.65369,,0.0,0,0,0,10000 +2025-07-31T11:00:00+00:00,118580,118630,118351,118410,665.25975,,0.0,0,0,0,10000 +2025-07-31T12:00:00+00:00,118410,118709,118343,118688,425.17527,,0.0,0,0,0,10000 +2025-07-31T13:00:00+00:00,118688,118770,117880,118638,1594.50701,,0.0,0,0,0,10000 +2025-07-31T14:00:00+00:00,118639,118709,117960,117964,1053.25054,,0.0,0,0,0,10000 +2025-07-31T15:00:00+00:00,117964,118400,117917,118369,666.19703,,0.0,0,0,0,10000 +2025-07-31T16:00:00+00:00,118369,118955,118287,118612,1245.70165,,0.0,0,0,0,10000 +2025-07-31T17:00:00+00:00,118612,118624,117758,117801,1439.57712,,0.0,0,0,0,10000 +2025-07-31T18:00:00+00:00,117801,117858,117435,117768,1311.28374,,0.0,0,0,0,10000