jesse 2.2.2__tar.gz → 2.3.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1080) hide show
  1. {jesse-2.2.2/jesse.egg-info → jesse-2.3.1}/PKG-INFO +1 -1
  2. {jesse-2.2.2 → jesse-2.3.1}/jesse/enums/__init__.py +2 -0
  3. {jesse-2.2.2 → jesse-2.3.1}/jesse/info.py +38 -0
  4. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/agent_rules.md +23 -3
  5. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/resources/backtest_management.md +14 -17
  6. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/resources/candle.md +1 -1
  7. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/resources/indicator.md +4 -4
  8. jesse-2.3.1/jesse/mcp/resources/strategy.md +488 -0
  9. jesse-2.3.1/jesse/mcp/resources/strategy_examples.md +1024 -0
  10. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/resources/utilities.md +4 -4
  11. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/OptimizationSession.py +16 -0
  12. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/data_provider.py +2 -3
  13. jesse-2.3.1/jesse/modes/import_candles_mode/drivers/Lighter/LighterMain.py +114 -0
  14. jesse-2.3.1/jesse/modes/import_candles_mode/drivers/Lighter/LighterPerpetual.py +10 -0
  15. jesse-2.3.1/jesse/modes/import_candles_mode/drivers/Lighter/LighterPerpetualTestnet.py +10 -0
  16. jesse-2.3.1/jesse/modes/import_candles_mode/drivers/Lighter/lighter_utils.py +30 -0
  17. jesse-2.3.1/jesse/modes/import_candles_mode/drivers/Lighter/signer_libs/__init__.py +6 -0
  18. jesse-2.3.1/jesse/modes/import_candles_mode/drivers/Lighter/signer_libs/lighter-signer-darwin-arm64.dylib +0 -0
  19. jesse-2.3.1/jesse/modes/import_candles_mode/drivers/Lighter/signer_libs/lighter-signer-linux-amd64.so +0 -0
  20. jesse-2.3.1/jesse/modes/import_candles_mode/drivers/Lighter/signer_libs/lighter-signer-linux-arm64.so +0 -0
  21. jesse-2.3.1/jesse/modes/import_candles_mode/drivers/Lighter/signer_libs/lighter-signer-windows-amd64.dll +0 -0
  22. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/__init__.py +4 -0
  23. {jesse-2.2.2 → jesse-2.3.1}/jesse/repositories/closed_trade_repository.py +1 -1
  24. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/notifier.py +41 -34
  25. jesse-2.3.1/jesse/version.py +1 -0
  26. {jesse-2.2.2 → jesse-2.3.1/jesse.egg-info}/PKG-INFO +1 -1
  27. {jesse-2.2.2 → jesse-2.3.1}/jesse.egg-info/SOURCES.txt +11 -0
  28. {jesse-2.2.2 → jesse-2.3.1}/setup.py +1 -1
  29. jesse-2.3.1/tests/__init__.py +0 -0
  30. jesse-2.2.2/jesse/mcp/resources/strategy.md +0 -125
  31. jesse-2.2.2/jesse/version.py +0 -1
  32. {jesse-2.2.2 → jesse-2.3.1}/LICENSE +0 -0
  33. {jesse-2.2.2 → jesse-2.3.1}/MANIFEST.in +0 -0
  34. {jesse-2.2.2 → jesse-2.3.1}/README.md +0 -0
  35. {jesse-2.2.2 → jesse-2.3.1}/jesse/__init__.py +0 -0
  36. {jesse-2.2.2 → jesse-2.3.1}/jesse/candle_pipelines/__init__.py +0 -0
  37. {jesse-2.2.2 → jesse-2.3.1}/jesse/candle_pipelines/base_candles.py +0 -0
  38. {jesse-2.2.2 → jesse-2.3.1}/jesse/candle_pipelines/gaussian_noise.py +0 -0
  39. {jesse-2.2.2 → jesse-2.3.1}/jesse/candle_pipelines/gaussian_resampler.py +0 -0
  40. {jesse-2.2.2 → jesse-2.3.1}/jesse/candle_pipelines/moving_block_bootstrap.py +0 -0
  41. {jesse-2.2.2 → jesse-2.3.1}/jesse/cli.py +0 -0
  42. {jesse-2.2.2 → jesse-2.3.1}/jesse/config.py +0 -0
  43. {jesse-2.2.2 → jesse-2.3.1}/jesse/constants.py +0 -0
  44. {jesse-2.2.2 → jesse-2.3.1}/jesse/controllers/__init__.py +0 -0
  45. {jesse-2.2.2 → jesse-2.3.1}/jesse/controllers/ai_model_controller.py +0 -0
  46. {jesse-2.2.2 → jesse-2.3.1}/jesse/controllers/auth_controller.py +0 -0
  47. {jesse-2.2.2 → jesse-2.3.1}/jesse/controllers/backtest_controller.py +0 -0
  48. {jesse-2.2.2 → jesse-2.3.1}/jesse/controllers/candles_controller.py +0 -0
  49. {jesse-2.2.2 → jesse-2.3.1}/jesse/controllers/closed_trade_controller.py +0 -0
  50. {jesse-2.2.2 → jesse-2.3.1}/jesse/controllers/config_controller.py +0 -0
  51. {jesse-2.2.2 → jesse-2.3.1}/jesse/controllers/exchange_controller.py +0 -0
  52. {jesse-2.2.2 → jesse-2.3.1}/jesse/controllers/file_controller.py +0 -0
  53. {jesse-2.2.2 → jesse-2.3.1}/jesse/controllers/live_controller.py +0 -0
  54. {jesse-2.2.2 → jesse-2.3.1}/jesse/controllers/lsp_controller.py +0 -0
  55. {jesse-2.2.2 → jesse-2.3.1}/jesse/controllers/monte_carlo_controller.py +0 -0
  56. {jesse-2.2.2 → jesse-2.3.1}/jesse/controllers/notification_controller.py +0 -0
  57. {jesse-2.2.2 → jesse-2.3.1}/jesse/controllers/optimization_controller.py +0 -0
  58. {jesse-2.2.2 → jesse-2.3.1}/jesse/controllers/order_controller.py +0 -0
  59. {jesse-2.2.2 → jesse-2.3.1}/jesse/controllers/significance_test_controller.py +0 -0
  60. {jesse-2.2.2 → jesse-2.3.1}/jesse/controllers/strategy_controller.py +0 -0
  61. {jesse-2.2.2 → jesse-2.3.1}/jesse/controllers/system_controller.py +0 -0
  62. {jesse-2.2.2 → jesse-2.3.1}/jesse/controllers/tabs_controller.py +0 -0
  63. {jesse-2.2.2 → jesse-2.3.1}/jesse/controllers/websocket_controller.py +0 -0
  64. {jesse-2.2.2 → jesse-2.3.1}/jesse/exceptions/__init__.py +0 -0
  65. {jesse-2.2.2 → jesse-2.3.1}/jesse/exchanges/__init__.py +0 -0
  66. {jesse-2.2.2 → jesse-2.3.1}/jesse/exchanges/exchange.py +0 -0
  67. {jesse-2.2.2 → jesse-2.3.1}/jesse/exchanges/sandbox/Sandbox.py +0 -0
  68. {jesse-2.2.2 → jesse-2.3.1}/jesse/exchanges/sandbox/__init__.py +0 -0
  69. {jesse-2.2.2 → jesse-2.3.1}/jesse/factories/__init__.py +0 -0
  70. {jesse-2.2.2 → jesse-2.3.1}/jesse/factories/candle_factory.py +0 -0
  71. {jesse-2.2.2 → jesse-2.3.1}/jesse/factories/order_factory.py +0 -0
  72. {jesse-2.2.2 → jesse-2.3.1}/jesse/helpers.py +0 -0
  73. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/__init__.py +0 -0
  74. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/acosc.py +0 -0
  75. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/ad.py +0 -0
  76. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/adosc.py +0 -0
  77. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/adx.py +0 -0
  78. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/adxr.py +0 -0
  79. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/alligator.py +0 -0
  80. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/alma.py +0 -0
  81. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/ao.py +0 -0
  82. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/apo.py +0 -0
  83. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/aroon.py +0 -0
  84. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/aroonosc.py +0 -0
  85. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/atr.py +0 -0
  86. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/avgprice.py +0 -0
  87. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/bandpass.py +0 -0
  88. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/beta.py +0 -0
  89. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/bollinger_bands.py +0 -0
  90. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/bollinger_bands_width.py +0 -0
  91. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/bop.py +0 -0
  92. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/cc.py +0 -0
  93. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/cci.py +0 -0
  94. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/cfo.py +0 -0
  95. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/cg.py +0 -0
  96. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/chande.py +0 -0
  97. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/chop.py +0 -0
  98. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/cksp.py +0 -0
  99. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/cmo.py +0 -0
  100. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/correl.py +0 -0
  101. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/correlation_cycle.py +0 -0
  102. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/cvi.py +0 -0
  103. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/cwma.py +0 -0
  104. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/damiani_volatmeter.py +0 -0
  105. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/dec_osc.py +0 -0
  106. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/decycler.py +0 -0
  107. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/dema.py +0 -0
  108. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/devstop.py +0 -0
  109. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/di.py +0 -0
  110. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/dm.py +0 -0
  111. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/donchian.py +0 -0
  112. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/dpo.py +0 -0
  113. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/dti.py +0 -0
  114. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/dx.py +0 -0
  115. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/edcf.py +0 -0
  116. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/efi.py +0 -0
  117. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/ema.py +0 -0
  118. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/emd.py +0 -0
  119. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/emv.py +0 -0
  120. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/epma.py +0 -0
  121. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/er.py +0 -0
  122. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/eri.py +0 -0
  123. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/fisher.py +0 -0
  124. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/fosc.py +0 -0
  125. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/frama.py +0 -0
  126. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/fwma.py +0 -0
  127. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/gatorosc.py +0 -0
  128. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/gauss.py +0 -0
  129. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/heikin_ashi_candles.py +0 -0
  130. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/high_pass.py +0 -0
  131. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/high_pass_2_pole.py +0 -0
  132. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/hma.py +0 -0
  133. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/hull_suit.py +0 -0
  134. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/hurst_exponent.py +0 -0
  135. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/hwma.py +0 -0
  136. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/ichimoku_cloud.py +0 -0
  137. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/ichimoku_cloud_seq.py +0 -0
  138. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/ift_rsi.py +0 -0
  139. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/itrend.py +0 -0
  140. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/jma.py +0 -0
  141. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/jsa.py +0 -0
  142. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/kama.py +0 -0
  143. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/kaufmanstop.py +0 -0
  144. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/kdj.py +0 -0
  145. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/keltner.py +0 -0
  146. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/kst.py +0 -0
  147. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/kurtosis.py +0 -0
  148. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/kvo.py +0 -0
  149. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/linearreg.py +0 -0
  150. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/linearreg_angle.py +0 -0
  151. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/linearreg_intercept.py +0 -0
  152. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/linearreg_slope.py +0 -0
  153. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/lrsi.py +0 -0
  154. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/ma.py +0 -0
  155. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/maaq.py +0 -0
  156. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/mab.py +0 -0
  157. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/macd.py +0 -0
  158. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/mama.py +0 -0
  159. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/marketfi.py +0 -0
  160. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/mass.py +0 -0
  161. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/mcginley_dynamic.py +0 -0
  162. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/mean_ad.py +0 -0
  163. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/median_ad.py +0 -0
  164. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/medprice.py +0 -0
  165. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/mfi.py +0 -0
  166. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/midpoint.py +0 -0
  167. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/midprice.py +0 -0
  168. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/minmax.py +0 -0
  169. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/mom.py +0 -0
  170. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/mwdx.py +0 -0
  171. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/natr.py +0 -0
  172. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/nma.py +0 -0
  173. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/nvi.py +0 -0
  174. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/obv.py +0 -0
  175. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/pfe.py +0 -0
  176. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/pivot.py +0 -0
  177. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/pma.py +0 -0
  178. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/ppo.py +0 -0
  179. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/pvi.py +0 -0
  180. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/pwma.py +0 -0
  181. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/qstick.py +0 -0
  182. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/reflex.py +0 -0
  183. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/rma.py +0 -0
  184. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/roc.py +0 -0
  185. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/rocp.py +0 -0
  186. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/rocr.py +0 -0
  187. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/rocr100.py +0 -0
  188. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/roofing.py +0 -0
  189. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/rsi.py +0 -0
  190. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/rsmk.py +0 -0
  191. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/rsx.py +0 -0
  192. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/rvi.py +0 -0
  193. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/safezonestop.py +0 -0
  194. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/sar.py +0 -0
  195. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/sinwma.py +0 -0
  196. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/skew.py +0 -0
  197. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/sma.py +0 -0
  198. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/smma.py +0 -0
  199. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/squeeze_momentum.py +0 -0
  200. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/sqwma.py +0 -0
  201. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/srsi.py +0 -0
  202. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/srwma.py +0 -0
  203. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/stc.py +0 -0
  204. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/stddev.py +0 -0
  205. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/stiffness.py +0 -0
  206. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/stochastic.py +0 -0
  207. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/stochf.py +0 -0
  208. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/supersmoother.py +0 -0
  209. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/supersmoother_3_pole.py +0 -0
  210. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/supertrend.py +0 -0
  211. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/support_resistance_with_break.py +0 -0
  212. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/swma.py +0 -0
  213. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/t3.py +0 -0
  214. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/tema.py +0 -0
  215. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/trange.py +0 -0
  216. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/trendflex.py +0 -0
  217. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/trima.py +0 -0
  218. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/trix.py +0 -0
  219. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/tsf.py +0 -0
  220. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/tsi.py +0 -0
  221. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/ttm_squeeze.py +0 -0
  222. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/ttm_trend.py +0 -0
  223. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/typprice.py +0 -0
  224. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/ui.py +0 -0
  225. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/ultosc.py +0 -0
  226. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/var.py +0 -0
  227. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/vi.py +0 -0
  228. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/vidya.py +0 -0
  229. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/vlma.py +0 -0
  230. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/volume.py +0 -0
  231. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/vosc.py +0 -0
  232. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/voss.py +0 -0
  233. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/vpci.py +0 -0
  234. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/vpt.py +0 -0
  235. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/vpwma.py +0 -0
  236. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/vwap.py +0 -0
  237. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/vwma.py +0 -0
  238. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/vwmacd.py +0 -0
  239. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/wad.py +0 -0
  240. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/waddah_attr_explosion.py +0 -0
  241. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/wclprice.py +0 -0
  242. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/wilders.py +0 -0
  243. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/willr.py +0 -0
  244. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/wma.py +0 -0
  245. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/wt.py +0 -0
  246. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/zlema.py +0 -0
  247. {jesse-2.2.2 → jesse-2.3.1}/jesse/indicators/zscore.py +0 -0
  248. {jesse-2.2.2 → jesse-2.3.1}/jesse/libs/__init__.py +0 -0
  249. {jesse-2.2.2 → jesse-2.3.1}/jesse/libs/custom_json/__init__.py +0 -0
  250. {jesse-2.2.2 → jesse-2.3.1}/jesse/libs/dynamic_numpy_array/__init__.py +0 -0
  251. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/__init__.py +0 -0
  252. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/agent_rules.py +0 -0
  253. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/manager.py +0 -0
  254. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/mcp_config.py +0 -0
  255. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/resources/__init__.py +0 -0
  256. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/resources/backtest_metrics.md +0 -0
  257. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/resources/configuration.md +0 -0
  258. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/resources/monte_carlo.md +0 -0
  259. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/resources/position_risk.md +0 -0
  260. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/resources/significance_test.md +0 -0
  261. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/server.py +0 -0
  262. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/test.py +0 -0
  263. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/tools/__init__.py +0 -0
  264. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/tools/backtest.py +0 -0
  265. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/tools/candles.py +0 -0
  266. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/tools/config.py +0 -0
  267. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/tools/general.py +0 -0
  268. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/tools/indicator.py +0 -0
  269. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/tools/monte_carlo.py +0 -0
  270. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/tools/services/__init__.py +0 -0
  271. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/tools/services/auth.py +0 -0
  272. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/tools/services/backtest.py +0 -0
  273. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/tools/services/candles.py +0 -0
  274. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/tools/services/config.py +0 -0
  275. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/tools/services/general.py +0 -0
  276. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/tools/services/indicator.py +0 -0
  277. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/tools/services/monte_carlo.py +0 -0
  278. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/tools/services/significance_test.py +0 -0
  279. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/tools/services/strategy.py +0 -0
  280. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/tools/significance_test.py +0 -0
  281. {jesse-2.2.2 → jesse-2.3.1}/jesse/mcp/tools/strategy.py +0 -0
  282. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/AiModel.py +0 -0
  283. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/BacktestSession.py +0 -0
  284. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/Candle.py +0 -0
  285. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/ClosedTrade.py +0 -0
  286. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/Exchange.py +0 -0
  287. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/ExchangeApiKeys.py +0 -0
  288. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/FuturesExchange.py +0 -0
  289. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/LiveEquitySnapshot.py +0 -0
  290. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/LiveSession.py +0 -0
  291. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/Log.py +0 -0
  292. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/MonteCarloSession.py +0 -0
  293. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/NotificationApiKeys.py +0 -0
  294. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/OpenTab.py +0 -0
  295. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/Option.py +0 -0
  296. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/Order.py +0 -0
  297. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/Orderbook.py +0 -0
  298. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/Position.py +0 -0
  299. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/Route.py +0 -0
  300. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/SignificanceTestSession.py +0 -0
  301. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/SpotExchange.py +0 -0
  302. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/Ticker.py +0 -0
  303. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/Trade.py +0 -0
  304. {jesse-2.2.2 → jesse-2.3.1}/jesse/models/__init__.py +0 -0
  305. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/__init__.py +0 -0
  306. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/backtest_mode.py +0 -0
  307. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/exchange_api_keys.py +0 -0
  308. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/__init__.py +0 -0
  309. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Apex/ApexOmniPerpetual.py +0 -0
  310. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Apex/ApexOmniPerpetualTestnet.py +0 -0
  311. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Apex/ApexProMain.py +0 -0
  312. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Apex/ApexProPerpetual.py +0 -0
  313. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Apex/ApexProPerpetualTestnet.py +0 -0
  314. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Apex/__init__.py +0 -0
  315. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Apex/apex_pro_utils.py +0 -0
  316. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Apex/omni_files/__init__.py +0 -0
  317. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Apex/omni_files/libzklink_sdk-arm.dylib +0 -0
  318. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Apex/omni_files/libzklink_sdk-x86.dylib +0 -0
  319. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Apex/omni_files/libzklink_sdk.dylib +0 -0
  320. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Apex/omni_files/libzklink_sdk.so +0 -0
  321. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Apex/omni_files/zklink_sdk-arm.py +0 -0
  322. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Apex/omni_files/zklink_sdk-pc.py +0 -0
  323. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Apex/omni_files/zklink_sdk-x86.py +0 -0
  324. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Apex/omni_files/zklink_sdk.dll +0 -0
  325. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Apex/omni_files/zklink_sdk.py +0 -0
  326. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Binance/BinanceMain.py +0 -0
  327. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Binance/BinancePerpetualFutures.py +0 -0
  328. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Binance/BinancePerpetualFuturesTestnet.py +0 -0
  329. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Binance/BinanceSpot.py +0 -0
  330. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Binance/BinanceUSSpot.py +0 -0
  331. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Binance/__init__.py +0 -0
  332. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Binance/binance_utils.py +0 -0
  333. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Bitfinex/BitfinexSpot.py +0 -0
  334. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Bitfinex/__init__.py +0 -0
  335. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Bitfinex/bitfinex_utils.py +0 -0
  336. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Bybit/BybitMain.py +0 -0
  337. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Bybit/BybitSpot.py +0 -0
  338. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Bybit/BybitSpotTestnet.py +0 -0
  339. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Bybit/BybitUSDCPerpetual.py +0 -0
  340. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Bybit/BybitUSDCPerpetualTestnet.py +0 -0
  341. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Bybit/BybitUSDTPerpetual.py +0 -0
  342. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Bybit/BybitUSDTPerpetualTestnet.py +0 -0
  343. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Bybit/__init__.py +0 -0
  344. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Bybit/bybit_utils.py +0 -0
  345. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Coinbase/CoinbaseSpot.py +0 -0
  346. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Coinbase/__init__.py +0 -0
  347. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Coinbase/coinbase_utils.py +0 -0
  348. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Gate/GateSpot.py +0 -0
  349. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Gate/GateSpotMain.py +0 -0
  350. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Gate/GateUSDTMain.py +0 -0
  351. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Gate/GateUSDTPerpetual.py +0 -0
  352. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Gate/__init__.py +0 -0
  353. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Gate/gate_utils.py +0 -0
  354. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Hyperliquid/HyperliquidPerpetual.py +0 -0
  355. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Hyperliquid/HyperliquidPerpetualMain.py +0 -0
  356. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Hyperliquid/HyperliquidPerpetualTestnet.py +0 -0
  357. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Hyperliquid/__init__.py +0 -0
  358. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/Hyperliquid/hyperliquid_utils.py +0 -0
  359. {jesse-2.2.2/jesse/services → jesse-2.3.1/jesse/modes/import_candles_mode/drivers/Lighter}/__init__.py +0 -0
  360. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/import_candles_mode/drivers/interface.py +0 -0
  361. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/monte_carlo_mode/MonteCarloRunner.py +0 -0
  362. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/monte_carlo_mode/__init__.py +0 -0
  363. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/notification_api_keys.py +0 -0
  364. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/optimize_mode/Optimize.py +0 -0
  365. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/optimize_mode/__init__.py +0 -0
  366. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/optimize_mode/fitness.py +0 -0
  367. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/significance_test_mode/SignificanceTestRunner.py +0 -0
  368. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/significance_test_mode/__init__.py +0 -0
  369. {jesse-2.2.2 → jesse-2.3.1}/jesse/modes/utils.py +0 -0
  370. {jesse-2.2.2 → jesse-2.3.1}/jesse/repositories/__init__.py +0 -0
  371. {jesse-2.2.2 → jesse-2.3.1}/jesse/repositories/candle_repository.py +0 -0
  372. {jesse-2.2.2 → jesse-2.3.1}/jesse/repositories/live_equity_repository.py +0 -0
  373. {jesse-2.2.2 → jesse-2.3.1}/jesse/repositories/live_session_repository.py +0 -0
  374. {jesse-2.2.2 → jesse-2.3.1}/jesse/repositories/open_tab_repository.py +0 -0
  375. {jesse-2.2.2 → jesse-2.3.1}/jesse/repositories/order_repository.py +0 -0
  376. {jesse-2.2.2 → jesse-2.3.1}/jesse/research/__init__.py +0 -0
  377. {jesse-2.2.2 → jesse-2.3.1}/jesse/research/backtest.py +0 -0
  378. {jesse-2.2.2 → jesse-2.3.1}/jesse/research/candles.py +0 -0
  379. {jesse-2.2.2 → jesse-2.3.1}/jesse/research/import_candles.py +0 -0
  380. {jesse-2.2.2 → jesse-2.3.1}/jesse/research/ml.py +0 -0
  381. {jesse-2.2.2 → jesse-2.3.1}/jesse/research/monte_carlo/__init__.py +0 -0
  382. {jesse-2.2.2 → jesse-2.3.1}/jesse/research/monte_carlo/common.py +0 -0
  383. {jesse-2.2.2 → jesse-2.3.1}/jesse/research/monte_carlo/monte_carlo_candles.py +0 -0
  384. {jesse-2.2.2 → jesse-2.3.1}/jesse/research/monte_carlo/monte_carlo_trades.py +0 -0
  385. {jesse-2.2.2 → jesse-2.3.1}/jesse/research/optimize/__init__.py +0 -0
  386. {jesse-2.2.2 → jesse-2.3.1}/jesse/research/rule_significance_testing/__init__.py +0 -0
  387. {jesse-2.2.2 → jesse-2.3.1}/jesse/research/rule_significance_testing/bootstrap.py +0 -0
  388. {jesse-2.2.2 → jesse-2.3.1}/jesse/research/rule_significance_testing/common.py +0 -0
  389. {jesse-2.2.2 → jesse-2.3.1}/jesse/research/rule_significance_testing/plots.py +0 -0
  390. {jesse-2.2.2 → jesse-2.3.1}/jesse/research/rule_significance_testing/rule_significance.py +0 -0
  391. {jesse-2.2.2 → jesse-2.3.1}/jesse/research/rule_significance_testing/simulator.py +0 -0
  392. {jesse-2.2.2 → jesse-2.3.1}/jesse/routes/__init__.py +0 -0
  393. {jesse-2.2.2/tests → jesse-2.3.1/jesse/services}/__init__.py +0 -0
  394. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/api.py +0 -0
  395. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/auth.py +0 -0
  396. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/broker.py +0 -0
  397. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/cache.py +0 -0
  398. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/candle_service.py +0 -0
  399. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/charts.py +0 -0
  400. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/closed_trade_service.py +0 -0
  401. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/color.py +0 -0
  402. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/db.py +0 -0
  403. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/env.py +0 -0
  404. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/exchange_service.py +0 -0
  405. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/failure.py +0 -0
  406. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/file.py +0 -0
  407. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/general_info.py +0 -0
  408. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/installer.py +0 -0
  409. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/jesse_trade.py +0 -0
  410. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/logger.py +0 -0
  411. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/lsp.py +0 -0
  412. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/metrics.py +0 -0
  413. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/migrator.py +0 -0
  414. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/multiprocessing.py +0 -0
  415. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/order_service.py +0 -0
  416. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/position_service.py +0 -0
  417. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/progressbar.py +0 -0
  418. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/redis.py +0 -0
  419. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/report.py +0 -0
  420. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/strategy_handler/ExampleStrategy/__init__.py +0 -0
  421. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/strategy_handler/__init__.py +0 -0
  422. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/strategy_service.py +0 -0
  423. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/table.py +0 -0
  424. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/tradingview.py +0 -0
  425. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/transformers.py +0 -0
  426. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/validators.py +0 -0
  427. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/web.py +0 -0
  428. {jesse-2.2.2 → jesse-2.3.1}/jesse/services/ws_manager.py +0 -0
  429. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/200.html +0 -0
  430. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/404.html +0 -0
  431. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/-30QC5Em.js +0 -0
  432. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/2oJWbEOo.js +0 -0
  433. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/3TATJI7h.js +0 -0
  434. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/3e1v2bzS.js +0 -0
  435. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/3kbuJQcV.js +0 -0
  436. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/3xVqZejG.js +0 -0
  437. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/5LuOXUq_.js +0 -0
  438. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/5y4Vyg26.js +0 -0
  439. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/727ZlQH0.js +0 -0
  440. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/7A4Fjokl.js +0 -0
  441. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/7O62HKoU.js +0 -0
  442. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/7ZYwO1wL.js +0 -0
  443. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/9AS84p_J.js +0 -0
  444. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/9C6ErRqt.js +0 -0
  445. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/ALS-8XQs.js +0 -0
  446. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B-DoSBHF.js +0 -0
  447. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B-k3dvlD.js +0 -0
  448. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B-lZjTdr.js +0 -0
  449. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B08HEjoJ.js +0 -0
  450. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B0XVJmRM.js +0 -0
  451. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B0m2ddpp.js +0 -0
  452. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B0qRVHPH.js +0 -0
  453. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B14Poo8t.js +0 -0
  454. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B1SYOhNW.js +0 -0
  455. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B1bQXN8T.js +0 -0
  456. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B2Cf9XSq.js +0 -0
  457. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B2vK47Ag.js +0 -0
  458. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B3ZDOciz.js +0 -0
  459. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B430Bg39.js +0 -0
  460. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B48N-Iqd.js +0 -0
  461. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B4VqtPa2.js +0 -0
  462. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B5auBHZD.js +0 -0
  463. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B5lbUyaz.js +0 -0
  464. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B5uW3Zvf.js +0 -0
  465. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B6PwfRVo.js +0 -0
  466. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B6W0miNI.js +0 -0
  467. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B6cCR3B0.js +0 -0
  468. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B7alP455.js +0 -0
  469. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B7mTdjB0.js +0 -0
  470. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B8ssZoUh.js +0 -0
  471. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B9WNnh9E.js +0 -0
  472. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B9tAzFk8.js +0 -0
  473. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B9wLZaAG.js +0 -0
  474. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BAng5TT0.js +0 -0
  475. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BC5c_5Pe.js +0 -0
  476. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BE9QQhgF.js +0 -0
  477. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BEBZ7ncR.js +0 -0
  478. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BEhvmC7f.js +0 -0
  479. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BFLt1xDp.js +0 -0
  480. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BFOHcciG.js +0 -0
  481. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BFk9XlIc.js +0 -0
  482. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BGLI1Hdo.js +0 -0
  483. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BHOwM8T6.js +0 -0
  484. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BI9oDWm9.js +0 -0
  485. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BIEUsx6d.js +0 -0
  486. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BILxekzW.js +0 -0
  487. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BJ4Li9vH.js +0 -0
  488. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BJGe-b2p.js +0 -0
  489. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BK9xJ97g.js +0 -0
  490. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BLhTXw86.js +0 -0
  491. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BLuZWbUW.js +0 -0
  492. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BLxaRREJ.js +0 -0
  493. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BMR_PYu6.js +0 -0
  494. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BMYPR7BL.js +0 -0
  495. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BMj5Y0dO.js +0 -0
  496. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BNHBcdi1.js +0 -0
  497. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BNioltXt.js +0 -0
  498. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BPT9niGB.js +0 -0
  499. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BPhBrDlE.js +0 -0
  500. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BQHEbijl.js +0 -0
  501. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BQj7hEmF.js +0 -0
  502. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BQoSv7ci.js +0 -0
  503. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BQwtg7Y-.js +0 -0
  504. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BQyhglpn.js +0 -0
  505. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BRk-K-rg.js +0 -0
  506. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BSxZ-RaX.js +0 -0
  507. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BTpWsGps.js +0 -0
  508. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BUEGK8hf.js +0 -0
  509. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BVUVsWT6.js +0 -0
  510. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BVr_1_27.js +0 -0
  511. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BVz_zdnA.js +0 -0
  512. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BWBTHuhh.js +0 -0
  513. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BX77sIaO.js +0 -0
  514. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BXW1EomU.js +0 -0
  515. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BXYnMxBe.js +0 -0
  516. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BXkSAIEj.js +0 -0
  517. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BY-TUvya.js +0 -0
  518. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BY6pwuIY.js +0 -0
  519. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BYfEzaKc.js +0 -0
  520. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BYtUz8ZP.js +0 -0
  521. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BZ3mVgh7.js +0 -0
  522. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B_2NBH8x.js +0 -0
  523. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B_U3BDh3.js +0 -0
  524. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B_i9asfM.js +0 -0
  525. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/B_m7g4N7.js +0 -0
  526. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BacktestTabs.XpCeWK_e.css +0 -0
  527. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BbSNqyBO.js +0 -0
  528. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Bc5xkKR1.js +0 -0
  529. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BcVrDPqo.js +0 -0
  530. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BdDjvGPZ.js +0 -0
  531. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BdxkyMLR.js +0 -0
  532. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Be6lgOlo.js +0 -0
  533. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BeQkCIfX.js +0 -0
  534. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BeX6IBQN.js +0 -0
  535. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BeosxbBR.js +0 -0
  536. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BfCpw3nA.js +0 -0
  537. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BfHTSMKl.js +0 -0
  538. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BfLuTCmN.js +0 -0
  539. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BfazEYIx.js +0 -0
  540. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BfivnA6A.js +0 -0
  541. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BfjtVDDH.js +0 -0
  542. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Bg-kzb6g.js +0 -0
  543. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BgDCqdQA.js +0 -0
  544. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BgYniUM_.js +0 -0
  545. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BiA0Vjwq.js +0 -0
  546. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BiFfXF7O.js +0 -0
  547. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Bid6LQhH.js +0 -0
  548. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BjABl1g7.js +0 -0
  549. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BjQB5zDj.js +0 -0
  550. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BknIz3MU.js +0 -0
  551. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Bkuqu6BP.js +0 -0
  552. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Bl1h29GH.js +0 -0
  553. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BlxRB_8X.js +0 -0
  554. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BoXegm-a.js +0 -0
  555. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Bp6g37R7.js +0 -0
  556. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BpR4rFUe.js +0 -0
  557. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BpV-U7xH.js +0 -0
  558. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BpWG_bgh.js +0 -0
  559. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Bri7RVrZ.js +0 -0
  560. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BsOYHjMa.js +0 -0
  561. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BsZeLSAC.js +0 -0
  562. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BthQWCQV.js +0 -0
  563. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Bu5BbsvL.js +0 -0
  564. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Bu73EIfS.js +0 -0
  565. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BuapDI9Y.js +0 -0
  566. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BupSXVCO.js +0 -0
  567. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Bvotw-X0.js +0 -0
  568. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Bw0wYZmb.js +0 -0
  569. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Bw305WKR.js +0 -0
  570. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BwXTMy5W.js +0 -0
  571. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BxUR8wTn.js +0 -0
  572. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Byb2_aFw.js +0 -0
  573. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BygKL3ZF.js +0 -0
  574. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BypH-vXm.js +0 -0
  575. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/BzJJZx-M.js +0 -0
  576. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Bzb7OGdO.js +0 -0
  577. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C-_shW-Y.js +0 -0
  578. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C-nORZOA.js +0 -0
  579. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C-wny61x.js +0 -0
  580. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C0nbwVuJ.js +0 -0
  581. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C1XDQQGZ.js +0 -0
  582. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C1tVc3UG.js +0 -0
  583. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C1w2a3ep.js +0 -0
  584. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C30yJ1fx.js +0 -0
  585. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C39BiMTA.js +0 -0
  586. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C3FkfJm5.js +0 -0
  587. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C3khCPGq.js +0 -0
  588. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C3mMm8J8.js +0 -0
  589. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C3spBWn3.js +0 -0
  590. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C3t2pwGQ.js +0 -0
  591. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C5Y8tDhP.js +0 -0
  592. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C5wWYbrZ.js +0 -0
  593. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C6j12Q_x.js +0 -0
  594. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C75U4IDy.js +0 -0
  595. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C7L56vO4.js +0 -0
  596. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C7gG9l05.js +0 -0
  597. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C8M2exoo.js +0 -0
  598. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C8lEn-DE.js +0 -0
  599. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C9L3yaDO.js +0 -0
  600. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CAQ2eGtk.js +0 -0
  601. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CAqdCCoA.js +0 -0
  602. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CB0Krxn9.js +0 -0
  603. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CB2ApiWb.js +0 -0
  604. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CCBS_C5_.js +0 -0
  605. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CCaADRuf.js +0 -0
  606. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CD_QflpE.js +0 -0
  607. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CG6Dc4jp.js +0 -0
  608. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CGVVOGHx.js +0 -0
  609. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CHxWgl8u.js +0 -0
  610. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CJaU5se_.js +0 -0
  611. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CKg9tqCS.js +0 -0
  612. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CM8KxXT1.js +0 -0
  613. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CMgmWNdv.js +0 -0
  614. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CMt9yHYq.js +0 -0
  615. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/COJ4H7py.js +0 -0
  616. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/COK4E0Yg.js +0 -0
  617. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/COcR7UxN.js +0 -0
  618. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/COyJrUc7.js +0 -0
  619. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CPj6Oxyc.js +0 -0
  620. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CQ0soPOq.js +0 -0
  621. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CQjiPCtT.js +0 -0
  622. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CS3Unz2-.js +0 -0
  623. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CSHBycmS.js +0 -0
  624. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CSp6iqVD.js +0 -0
  625. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CTNlIIiR.js +0 -0
  626. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CTRr51gU.js +0 -0
  627. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CUnW07Te.js +0 -0
  628. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CV9EbfTh.js +0 -0
  629. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CVO1_9PV.js +0 -0
  630. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CVw76BM1.js +0 -0
  631. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CXKOl_mN.js +0 -0
  632. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CYFUjXW1.js +0 -0
  633. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CYgUR4L5.js +0 -0
  634. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CZe0XNBd.js +0 -0
  635. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/C_scCXcs.js +0 -0
  636. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CafNBF8u.js +0 -0
  637. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CbfX1IO0.js +0 -0
  638. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Cc5clBb7.js +0 -0
  639. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CdO5JTpU.js +0 -0
  640. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Cf8iN4DR.js +0 -0
  641. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CfA6H1iD.js +0 -0
  642. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CfQXZHmo.js +0 -0
  643. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CfnpWUYo.js +0 -0
  644. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CgoVc2CE.js +0 -0
  645. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/ChA_izKI.js +0 -0
  646. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Ci6OQyBP.js +0 -0
  647. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CiLwMR9c.js +0 -0
  648. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CircleProgressbar.Bqs-YaMH.css +0 -0
  649. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CjDtw9vr.js +0 -0
  650. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CjZ9rSJP.js +0 -0
  651. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CjjU3m-a.js +0 -0
  652. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CkXjmgJE.js +0 -0
  653. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Ckkbw-AO.js +0 -0
  654. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Cl4mw-2c.js +0 -0
  655. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/ClGRhx96.js +0 -0
  656. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CmCqftbK.js +0 -0
  657. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CmUaXb8e.js +0 -0
  658. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CqwBQo24.js +0 -0
  659. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CrQ5KHDe.js +0 -0
  660. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CrrKwR0a.js +0 -0
  661. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CruqBWKG.js +0 -0
  662. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CsSk9TLD.js +0 -0
  663. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Csfq5Kiy.js +0 -0
  664. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CtHLcuxG.js +0 -0
  665. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CuFlys0T.js +0 -0
  666. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Cuk6v7N8.js +0 -0
  667. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Cv8gVKYl.js +0 -0
  668. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Cv9koXgw.js +0 -0
  669. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CwjWoCRV.js +0 -0
  670. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CyIGOvEh.js +0 -0
  671. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CyVeKkvQ.js +0 -0
  672. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CyktbL80.js +0 -0
  673. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Cz8P-rqG.js +0 -0
  674. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CzF1MCbP.js +0 -0
  675. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Cza_XSSt.js +0 -0
  676. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/CzouJOBO.js +0 -0
  677. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/D-2ljcwZ.js +0 -0
  678. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/D0UiDa5C.js +0 -0
  679. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/D0r3Knsf.js +0 -0
  680. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/D2PfwrvU.js +0 -0
  681. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/D2Z7JJdl.js +0 -0
  682. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/D4Tzg5kh.js +0 -0
  683. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/D4d0bmRY.js +0 -0
  684. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/D4h5O-jR.js +0 -0
  685. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/D5KoaKCx.js +0 -0
  686. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/D5ZsypWT.js +0 -0
  687. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/D5pd2Owo.js +0 -0
  688. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/D7lU1fdU.js +0 -0
  689. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/D7oLnXFd.js +0 -0
  690. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/D8SARrrT.js +0 -0
  691. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/D8mZ0lfy.js +0 -0
  692. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/D9-PGadD.js +0 -0
  693. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/D9R-vmeu.js +0 -0
  694. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/D9lg42C_.js +0 -0
  695. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/D9yiNO04.js +0 -0
  696. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DAi9KRSo.js +0 -0
  697. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DB0RB20n.js +0 -0
  698. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DBIdNJb1.js +0 -0
  699. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DBQeEorK.js +0 -0
  700. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DB_GagMm.js +0 -0
  701. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DCE3LsBG.js +0 -0
  702. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DDA0whWr.js +0 -0
  703. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DDpSJMW6.js +0 -0
  704. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DDrv2Hr-.js +0 -0
  705. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DDtJtuOZ.js +0 -0
  706. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DEIpsLCJ.js +0 -0
  707. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DEsW6eUH.js +0 -0
  708. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DGfQJd6p.js +0 -0
  709. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DH5Ifo-i.js +0 -0
  710. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DHJKELXO.js +0 -0
  711. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DHo0CJ0O.js +0 -0
  712. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DIHTwG2N.js +0 -0
  713. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DIovg4uR.js +0 -0
  714. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DJ6C8EHK.js +0 -0
  715. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DJQgcT-d.js +0 -0
  716. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DJlmqQ1C.js +0 -0
  717. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DKOGybHv.js +0 -0
  718. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DKXYxT9g.js +0 -0
  719. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DKykz6zU.js +0 -0
  720. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DL8Ve5HW.js +0 -0
  721. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DLPipH_Q.js +0 -0
  722. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DLbgOhZU.js +0 -0
  723. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DLs3tTet.js +0 -0
  724. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DNPblYf5.js +0 -0
  725. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DNquZEk8.js +0 -0
  726. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DOAuugfS.js +0 -0
  727. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DOk3G3cc.js +0 -0
  728. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DPvbFsQx.js +0 -0
  729. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DQ1-QYvQ.js +0 -0
  730. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DQVVAn-B.js +0 -0
  731. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DRC6TkPh.js +0 -0
  732. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DRCs4cJW.js +0 -0
  733. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DREVFZK8.js +0 -0
  734. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DRNBmV_Q.js +0 -0
  735. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DRVtMX6w.js +0 -0
  736. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DRW-0cLl.js +0 -0
  737. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DRhBOlRY.js +0 -0
  738. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DUszq2jm.js +0 -0
  739. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DUuF8ec2.js +0 -0
  740. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DVG02705.js +0 -0
  741. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DVYH6Lj_.js +0 -0
  742. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DWGz5Zuj.js +0 -0
  743. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DWJ3fJO_.js +0 -0
  744. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DWedfzmr.js +0 -0
  745. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DXbdFlpD.js +0 -0
  746. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DYoNaHQp.js +0 -0
  747. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DYvnoCeB.js +0 -0
  748. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/D_OY6ada.js +0 -0
  749. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/D_y4Iqca.js +0 -0
  750. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/D_z4Izcz.js +0 -0
  751. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Dayu4EKP.js +0 -0
  752. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DbXoA79R.js +0 -0
  753. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Dbxjm_CC.js +0 -0
  754. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Ddv68eIx.js +0 -0
  755. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DeYg-96x.js +0 -0
  756. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Deuh7S70.js +0 -0
  757. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DfxzS6Rs.js +0 -0
  758. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Dgyr3wWZ.js +0 -0
  759. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DhMKtDLN.js +0 -0
  760. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DhUJRlN_.js +0 -0
  761. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Dhn9LcZ4.js +0 -0
  762. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DiytYwWf.js +0 -0
  763. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Dj6nwHGl.js +0 -0
  764. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DjHMNizO.js +0 -0
  765. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DkBy-JyN.js +0 -0
  766. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DkLiglaE.js +0 -0
  767. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DmdQbaLT.js +0 -0
  768. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Dmy2k9nq.js +0 -0
  769. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Dn00JSTd.js +0 -0
  770. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DnULxvSX.js +0 -0
  771. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DoFvH58O.js +0 -0
  772. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DpC8jOIg.js +0 -0
  773. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DpwXO0Z8.js +0 -0
  774. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DqHb_Lsi.js +0 -0
  775. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DqwNpetd.js +0 -0
  776. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DrMooDfm.js +0 -0
  777. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DrRCxMg5.js +0 -0
  778. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Drsz93k2.js +0 -0
  779. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Ds-gbosJ.js +0 -0
  780. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DsBKuouk.js +0 -0
  781. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DsWjAdsX.js +0 -0
  782. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Dsg_Bt_b.js +0 -0
  783. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DtFQj3wx.js +0 -0
  784. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DtpSKk35.js +0 -0
  785. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Du268qiB.js +0 -0
  786. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Du5NY7AG.js +0 -0
  787. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DvSxYeG4.js +0 -0
  788. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DxSadP1t.js +0 -0
  789. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Dy-ATyBD.js +0 -0
  790. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/DyKutqhl.js +0 -0
  791. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/E3gJ1_iC.js +0 -0
  792. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/FNqbgIOG.js +0 -0
  793. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/GBQ2dnAY.js +0 -0
  794. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/GnDLJWeX.js +0 -0
  795. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/HNqc6WRo.js +0 -0
  796. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/HnGAYVZD.js +0 -0
  797. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/HzYwdGDm.js +0 -0
  798. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/IconCSS.RN4HczVp.css +0 -0
  799. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Inter-VariableFont_slnt_wght.Cl4AQHp9.ttf +0 -0
  800. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/IuBKFhSY.js +0 -0
  801. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/JqZropPD.js +0 -0
  802. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/KXmA5gEz.js +0 -0
  803. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/L9t79GZl.js +0 -0
  804. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/LGGdnPYs.js +0 -0
  805. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/LKU2TuZ1.js +0 -0
  806. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/LiveTabs.15UVtLVQ.css +0 -0
  807. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/P4WzXJd0.js +0 -0
  808. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Pj9gCBS1.js +0 -0
  809. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/PoHY5YXO.js +0 -0
  810. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Progress.CWZn3LuJ.css +0 -0
  811. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/QhoSD0DR.js +0 -0
  812. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/R900dpIa.js +0 -0
  813. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/SKMF96pI.js +0 -0
  814. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/SPD3sf1n.js +0 -0
  815. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/StrategiesSidebar.-h7ix9-v.css +0 -0
  816. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/T-Tgc4AT.js +0 -0
  817. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/TU54ms6u.js +0 -0
  818. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Tz6hzZYG.js +0 -0
  819. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/UIAJJxZW.js +0 -0
  820. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/UL5zprDm.js +0 -0
  821. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/UMmp-gVE.js +0 -0
  822. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Ua_dVQ2E.js +0 -0
  823. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/VuadG5SK.js +0 -0
  824. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/XBlWyCtg.js +0 -0
  825. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/XVrfe6Qe.js +0 -0
  826. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/Y6DubyxG.js +0 -0
  827. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/YJb9dmdj.js +0 -0
  828. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/ZlaFEk-P.js +0 -0
  829. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/_WwNv8Gt.js +0 -0
  830. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/_id_.BY-NJHml.css +0 -0
  831. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/_id_.DM7QJcru.css +0 -0
  832. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/_id_.J2oYSFWN.css +0 -0
  833. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/ahYVQIuB.js +0 -0
  834. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/ajMbGru0.js +0 -0
  835. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/atvbtKCR.js +0 -0
  836. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/bCA53EVm.js +0 -0
  837. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/bN70gL4F.js +0 -0
  838. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/cPjAOO0u.js +0 -0
  839. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/codicon.DCmgc-ay.ttf +0 -0
  840. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/din0uRiO.js +0 -0
  841. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/e4jU7D2d.js +0 -0
  842. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/eg146-Ew.js +0 -0
  843. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/entry.DZ1VJD8l.css +0 -0
  844. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/error-404.DZraUJun.css +0 -0
  845. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/error-500.XmAVHPl_.css +0 -0
  846. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/fje9CFhw.js +0 -0
  847. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/gRuQeaLk.js +0 -0
  848. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/ifBTmRxC.js +0 -0
  849. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/index.BCxjJPBI.css +0 -0
  850. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/index.BujPmbc0.css +0 -0
  851. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/index.DGzxCzt4.css +0 -0
  852. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/index.K8JdO5jA.css +0 -0
  853. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/index.lQPmb1y9.css +0 -0
  854. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/jN37G9_2.js +0 -0
  855. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/logo-dark.tKoQPl1k.svg +0 -0
  856. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/logo-light.CS4l4ePq.png +0 -0
  857. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/m09vb5r-.js +0 -0
  858. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/m2LEI-9-.js +0 -0
  859. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/m4gc_qpA.js +0 -0
  860. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/m4uW47V2.js +0 -0
  861. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/mebxcVVE.js +0 -0
  862. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/nyqBNV6O.js +0 -0
  863. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/qmhIZ77x.js +0 -0
  864. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/qpfuy3xp.js +0 -0
  865. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/r--hdCBL.js +0 -0
  866. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/r4BD7fzp.js +0 -0
  867. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/sacFqUAJ.js +0 -0
  868. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/sdHcTMYB.js +0 -0
  869. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/shcSOmrb.js +0 -0
  870. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/ul-Lp4lw.js +0 -0
  871. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/w-ucz2PV.js +0 -0
  872. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/w8dY5SsB.js +0 -0
  873. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/wI6OXr6j.js +0 -0
  874. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/xI-RfyKK.js +0 -0
  875. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/xW4inM5L.js +0 -0
  876. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/xgbdnDAz.js +0 -0
  877. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/ySlJ1b_l.js +0 -0
  878. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/yf5bffbF.js +0 -0
  879. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/_nuxt/zocC4JxJ.js +0 -0
  880. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/favicon.ico +0 -0
  881. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/favicons/android-chrome-192x192.png +0 -0
  882. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/favicons/android-chrome-512x512.png +0 -0
  883. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/favicons/apple-touch-icon.png +0 -0
  884. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/favicons/favicon-16x16.png +0 -0
  885. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/favicons/favicon-32x32.png +0 -0
  886. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/index.html +0 -0
  887. {jesse-2.2.2 → jesse-2.3.1}/jesse/static/robots.txt +0 -0
  888. {jesse-2.2.2 → jesse-2.3.1}/jesse/store/__init__.py +0 -0
  889. {jesse-2.2.2 → jesse-2.3.1}/jesse/store/state_app.py +0 -0
  890. {jesse-2.2.2 → jesse-2.3.1}/jesse/store/state_candles.py +0 -0
  891. {jesse-2.2.2 → jesse-2.3.1}/jesse/store/state_closed_trades.py +0 -0
  892. {jesse-2.2.2 → jesse-2.3.1}/jesse/store/state_exchanges.py +0 -0
  893. {jesse-2.2.2 → jesse-2.3.1}/jesse/store/state_logs.py +0 -0
  894. {jesse-2.2.2 → jesse-2.3.1}/jesse/store/state_orderbook.py +0 -0
  895. {jesse-2.2.2 → jesse-2.3.1}/jesse/store/state_orders.py +0 -0
  896. {jesse-2.2.2 → jesse-2.3.1}/jesse/store/state_positions.py +0 -0
  897. {jesse-2.2.2 → jesse-2.3.1}/jesse/store/state_tickers.py +0 -0
  898. {jesse-2.2.2 → jesse-2.3.1}/jesse/store/state_trades.py +0 -0
  899. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/CanAddClosedTradeToStore/__init__.py +0 -0
  900. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Strategy.py +0 -0
  901. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test01/__init__.py +0 -0
  902. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test02/__init__.py +0 -0
  903. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test04/__init__.py +0 -0
  904. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test05/__init__.py +0 -0
  905. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test06/__init__.py +0 -0
  906. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test07/__init__.py +0 -0
  907. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test08/__init__.py +0 -0
  908. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test09/__init__.py +0 -0
  909. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test10/__init__.py +0 -0
  910. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test11/__init__.py +0 -0
  911. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test12/__init__.py +0 -0
  912. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test13/__init__.py +0 -0
  913. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test14/__init__.py +0 -0
  914. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test15/__init__.py +0 -0
  915. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test16/__init__.py +0 -0
  916. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test17/__init__.py +0 -0
  917. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test18/__init__.py +0 -0
  918. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test19/__init__.py +0 -0
  919. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test20/__init__.py +0 -0
  920. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test21/__init__.py +0 -0
  921. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test22/__init__.py +0 -0
  922. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test23/__init__.py +0 -0
  923. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test24/__init__.py +0 -0
  924. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test25/__init__.py +0 -0
  925. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test26/__init__.py +0 -0
  926. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test27/__init__.py +0 -0
  927. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test28/__init__.py +0 -0
  928. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test29/__init__.py +0 -0
  929. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test30/__init__.py +0 -0
  930. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test31/__init__.py +0 -0
  931. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test32/__init__.py +0 -0
  932. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test33/__init__.py +0 -0
  933. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test34/__init__.py +0 -0
  934. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test35/__init__.py +0 -0
  935. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test36/__init__.py +0 -0
  936. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test37/__init__.py +0 -0
  937. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test38/__init__.py +0 -0
  938. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test39/__init__.py +0 -0
  939. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test40/__init__.py +0 -0
  940. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test41/__init__.py +0 -0
  941. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test44/__init__.py +0 -0
  942. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test45/__init__.py +0 -0
  943. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test46/__init__.py +0 -0
  944. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test47/__init__.py +0 -0
  945. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/Test48/__init__.py +0 -0
  946. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestAddHorizontalLineToCandleChart/__init__.py +0 -0
  947. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestAddHorizontalLineToExtraChart/__init__.py +0 -0
  948. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestAddLineToCandleChart/__init__.py +0 -0
  949. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestAddLineToExtraChart/__init__.py +0 -0
  950. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestAfterMethod/__init__.py +0 -0
  951. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestAverageEntryPriceProperty/__init__.py +0 -0
  952. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestBalanceAndFeeReductionWorksCorrectlyInSpotModeInBothBuyAndSellOrders/__init__.py +0 -0
  953. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestBalancesAreHandledCorrectlyForCancellingOrdersInSpot/__init__.py +0 -0
  954. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestBaseAndQuoteAssetProperties/__init__.py +0 -0
  955. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestBeforeMethod/__init__.py +0 -0
  956. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestBeforeTerminate/__init__.py +0 -0
  957. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestCanCancelEntryOrdersAfterOpenPositionLong1/__init__.py +0 -0
  958. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestCanCancelEntryOrdersAfterOpenPositionLong2/__init__.py +0 -0
  959. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestCanCancelEntryOrdersAfterOpenPositionShort1/__init__.py +0 -0
  960. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestCanCancelEntryOrdersAfterOpenPositionShort2/__init__.py +0 -0
  961. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestCanOpenANewPositionImmediatelyAfterClosingViaUpdatePosition/__init__.py +0 -0
  962. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestCanRunWithoutShorting/__init__.py +0 -0
  963. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestCanSubmitStopLossOrderWithSizeEqualToCurrentPositionQty/__init__.py +0 -0
  964. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestCanSubmitStopLossOrderWithSizeLessThanCurrentPositionQty/__init__.py +0 -0
  965. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestCanSubmitTakeProfitAndStopLossAtSameTimeInSpot/__init__.py +0 -0
  966. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestCanSubmitTakeProfitOrderWithSizeEqualToCurrentPositionQty/__init__.py +0 -0
  967. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestCanSubmitTakeProfitOrderWithSizeLessThanCurrentPositionQty/__init__.py +0 -0
  968. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestCannotSetStopLossOrderInGoLong/__init__.py +0 -0
  969. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestCannotSetTakeProfitOrderInGoLong/__init__.py +0 -0
  970. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestCannotSpendMoreThanAvailableBalance/__init__.py +0 -0
  971. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestCannotSubmitStopLossOrderWithSizeMoreThanCurrentPositionQty/__init__.py +0 -0
  972. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestCannotSubmitTakeProfitOrderWithSizeMoreThanCurrentPositionQty/__init__.py +0 -0
  973. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestCapitalPropertyRaisesNotImplementedError/__init__.py +0 -0
  974. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestClosedTradeAfterExitingTrade/__init__.py +0 -0
  975. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestCurrentRouteIndex1/__init__.py +0 -0
  976. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestCurrentRouteIndex2/__init__.py +0 -0
  977. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestDailyBalanceStoresPortfolioValue/__init__.py +0 -0
  978. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestDailyBalancesProperty/__init__.py +0 -0
  979. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestDataRoutes1/__init__.py +0 -0
  980. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestDataRoutes2/__init__.py +0 -0
  981. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestDefaultHyperparameters/__init__.py +0 -0
  982. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestDnaMethod/__init__.py +0 -0
  983. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestEmptyStrategy/__init__.py +0 -0
  984. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestEntryOrdersAndExitOrdersProperties/__init__.py +0 -0
  985. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestExchangeTypeProperty1/__init__.py +0 -0
  986. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestExchangeTypeProperty2/__init__.py +0 -0
  987. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestFuturesExchangeAvailableMargin/__init__.py +0 -0
  988. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestHasLongAndShortEntryOrdersPropertiesInFilters/__init__.py +0 -0
  989. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestHasLongEntryOrdersProperty/__init__.py +0 -0
  990. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestHasShortEntryOrdersProperty/__init__.py +0 -0
  991. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestIncreasedAndReducedCount/__init__.py +0 -0
  992. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestIncreasingShortPosition/__init__.py +0 -0
  993. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestInsufficientMargin1/__init__.py +0 -0
  994. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestInsufficientMargin2/__init__.py +0 -0
  995. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestInsufficientMargin3/__init__.py +0 -0
  996. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestLeverageProperty1/__init__.py +0 -0
  997. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestLeverageProperty2/__init__.py +0 -0
  998. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestLiquidationInCrossModeForShortTrade/__init__.py +0 -0
  999. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestLiquidationInIsolatedModeForLongTrade/__init__.py +0 -0
  1000. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestLiquidationInIsolatedModeForShortTrade/__init__.py +0 -0
  1001. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestLogMethodInStrategyClass/__init__.py +0 -0
  1002. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestMarkPrice/__init__.py +0 -0
  1003. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestMarketOrderForLowPriceDifference/__init__.py +0 -0
  1004. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestMetrics1/__init__.py +0 -0
  1005. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestMultipleEntryOrdersUpdateEntryLongPositions/__init__.py +0 -0
  1006. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestMultipleEntryOrdersUpdateEntryShortPositions/__init__.py +0 -0
  1007. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestOnCancelMethod/__init__.py +0 -0
  1008. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestOnClosePosition/__init__.py +0 -0
  1009. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestOnRouteOpenPosition/__init__.py +0 -0
  1010. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestOnRouteOpenPosition2/__init__.py +0 -0
  1011. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestOrderIsStopLossProperty/__init__.py +0 -0
  1012. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestOrderIsTakeProfitProperty/__init__.py +0 -0
  1013. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestOrderPriceCannotBeGreaterThanZero/__init__.py +0 -0
  1014. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestOrderValueProperty/__init__.py +0 -0
  1015. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestOrdersAreSortedBeforeExecution/__init__.py +0 -0
  1016. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestOversizedReduceOnlyExitAccounting/__init__.py +0 -0
  1017. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestPortfolioValue/__init__.py +0 -0
  1018. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestPortfolioValueIncludesPositionValueAndOpenOrdersValue/__init__.py +0 -0
  1019. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestPositionExchangeTypeProperty1/__init__.py +0 -0
  1020. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestPositionExchangeTypeProperty2/__init__.py +0 -0
  1021. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestPositionOpenIncreaseReduceCloseEventsInSpot/__init__.py +0 -0
  1022. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestPositionTotalCostProperty/__init__.py +0 -0
  1023. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestPositionWithLeverage1/__init__.py +0 -0
  1024. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestPositionWithLeverage2/__init__.py +0 -0
  1025. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestPositions/__init__.py +0 -0
  1026. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestProperBalanceHanldingInSpotAfterOrderCancellation/__init__.py +0 -0
  1027. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestReduceOnlyMarketOrders/__init__.py +0 -0
  1028. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestShortInSpot/__init__.py +0 -0
  1029. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestStopLossPriceIsReplacedWithMarketOrderForBetterPriceLongPosition/__init__.py +0 -0
  1030. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestStopLossPriceIsReplacedWithMarketOrderForBetterPriceShortPosition/__init__.py +0 -0
  1031. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestStopOrderShouldConsiderExecutedTakeProfitOrdersInSpot/__init__.py +0 -0
  1032. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestStrategyVariablesAreResetBeforeOpeningNewPosition/__init__.py +0 -0
  1033. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestTakeProfitPriceIsReplacedWithMarketOrderWhenMoreConvenientLongPosition/__init__.py +0 -0
  1034. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestTakeProfitPriceIsReplacedWithMarketOrderWhenMoreConvenientShortPosition/__init__.py +0 -0
  1035. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestTerminate/__init__.py +0 -0
  1036. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestUsageOfShouldCancelRaisesNotImplementedError/__init__.py +0 -0
  1037. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestVanillaStrategy/__init__.py +0 -0
  1038. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestWalletBalance/__init__.py +0 -0
  1039. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/TestWithoutCancelMethod/__init__.py +0 -0
  1040. {jesse-2.2.2 → jesse-2.3.1}/jesse/strategies/__init__.py +0 -0
  1041. {jesse-2.2.2 → jesse-2.3.1}/jesse/testing_utils.py +0 -0
  1042. {jesse-2.2.2 → jesse-2.3.1}/jesse/utils.py +0 -0
  1043. {jesse-2.2.2 → jesse-2.3.1}/jesse.egg-info/dependency_links.txt +0 -0
  1044. {jesse-2.2.2 → jesse-2.3.1}/jesse.egg-info/entry_points.txt +0 -0
  1045. {jesse-2.2.2 → jesse-2.3.1}/jesse.egg-info/requires.txt +0 -0
  1046. {jesse-2.2.2 → jesse-2.3.1}/jesse.egg-info/top_level.txt +0 -0
  1047. {jesse-2.2.2 → jesse-2.3.1}/requirements.txt +0 -0
  1048. {jesse-2.2.2 → jesse-2.3.1}/setup.cfg +0 -0
  1049. {jesse-2.2.2 → jesse-2.3.1}/tests/data/__init__.py +0 -0
  1050. {jesse-2.2.2 → jesse-2.3.1}/tests/data/test_candles_0.py +0 -0
  1051. {jesse-2.2.2 → jesse-2.3.1}/tests/data/test_candles_1.py +0 -0
  1052. {jesse-2.2.2 → jesse-2.3.1}/tests/data/test_candles_indicators.py +0 -0
  1053. {jesse-2.2.2 → jesse-2.3.1}/tests/test_backtest.py +0 -0
  1054. {jesse-2.2.2 → jesse-2.3.1}/tests/test_broker.py +0 -0
  1055. {jesse-2.2.2 → jesse-2.3.1}/tests/test_candle_service.py +0 -0
  1056. {jesse-2.2.2 → jesse-2.3.1}/tests/test_chart_data_serialization.py +0 -0
  1057. {jesse-2.2.2 → jesse-2.3.1}/tests/test_completed_trade.py +0 -0
  1058. {jesse-2.2.2 → jesse-2.3.1}/tests/test_conflicting_orders.py +0 -0
  1059. {jesse-2.2.2 → jesse-2.3.1}/tests/test_dynamic_numpy_array.py +0 -0
  1060. {jesse-2.2.2 → jesse-2.3.1}/tests/test_exchange.py +0 -0
  1061. {jesse-2.2.2 → jesse-2.3.1}/tests/test_helpers.py +0 -0
  1062. {jesse-2.2.2 → jesse-2.3.1}/tests/test_import_candles.py +0 -0
  1063. {jesse-2.2.2 → jesse-2.3.1}/tests/test_indicators.py +0 -0
  1064. {jesse-2.2.2 → jesse-2.3.1}/tests/test_isolated_backtest.py +0 -0
  1065. {jesse-2.2.2 → jesse-2.3.1}/tests/test_lsp.py +0 -0
  1066. {jesse-2.2.2 → jesse-2.3.1}/tests/test_metrics.py +0 -0
  1067. {jesse-2.2.2 → jesse-2.3.1}/tests/test_order.py +0 -0
  1068. {jesse-2.2.2 → jesse-2.3.1}/tests/test_parent_strategy.py +0 -0
  1069. {jesse-2.2.2 → jesse-2.3.1}/tests/test_position.py +0 -0
  1070. {jesse-2.2.2 → jesse-2.3.1}/tests/test_research.py +0 -0
  1071. {jesse-2.2.2 → jesse-2.3.1}/tests/test_router.py +0 -0
  1072. {jesse-2.2.2 → jesse-2.3.1}/tests/test_spot_mode.py +0 -0
  1073. {jesse-2.2.2 → jesse-2.3.1}/tests/test_state_candle.py +0 -0
  1074. {jesse-2.2.2 → jesse-2.3.1}/tests/test_state_exchanges.py +0 -0
  1075. {jesse-2.2.2 → jesse-2.3.1}/tests/test_state_logs.py +0 -0
  1076. {jesse-2.2.2 → jesse-2.3.1}/tests/test_state_orderbook.py +0 -0
  1077. {jesse-2.2.2 → jesse-2.3.1}/tests/test_state_orders.py +0 -0
  1078. {jesse-2.2.2 → jesse-2.3.1}/tests/test_state_ticker.py +0 -0
  1079. {jesse-2.2.2 → jesse-2.3.1}/tests/test_state_trades.py +0 -0
  1080. {jesse-2.2.2 → jesse-2.3.1}/tests/test_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: jesse
3
- Version: 2.2.2
3
+ Version: 2.3.1
4
4
  Summary: A trading framework for cryptocurrencies
5
5
  Home-page: https://jesse.trade
6
6
  Author: Saleh Mir
@@ -91,6 +91,8 @@ class exchanges:
91
91
  GATE_SPOT = 'Gate Spot'
92
92
  HYPERLIQUID_PERPETUAL = 'Hyperliquid Perpetual'
93
93
  HYPERLIQUID_PERPETUAL_TESTNET = 'Hyperliquid Perpetual Testnet'
94
+ LIGHTER_PERPETUAL = 'Lighter Perpetual'
95
+ LIGHTER_PERPETUAL_TESTNET = 'Lighter Perpetual Testnet'
94
96
 
95
97
 
96
98
  @dataclass
@@ -30,6 +30,11 @@ DYDX_TIMEFRAMES = [timeframes.MINUTE_1, timeframes.MINUTE_5, timeframes.MINUTE_1
30
30
  HYPERLIQUID_TIMEFRAMES = [timeframes.MINUTE_1, timeframes.MINUTE_3, timeframes.MINUTE_5, timeframes.MINUTE_15,
31
31
  timeframes.MINUTE_30, timeframes.HOUR_1, timeframes.HOUR_2, timeframes.HOUR_4, timeframes.HOUR_8, timeframes.HOUR_12, timeframes.DAY_1]
32
32
 
33
+ # Lighter natively serves these candle resolutions: 1m, 5m, 15m, 30m, 1h, 4h, 12h, 1d, 1w.
34
+ # We expose the ones Jesse supports as trading timeframes (1w is dropped).
35
+ LIGHTER_TIMEFRAMES = [timeframes.MINUTE_1, timeframes.MINUTE_5, timeframes.MINUTE_15,
36
+ timeframes.MINUTE_30, timeframes.HOUR_1, timeframes.HOUR_4, timeframes.HOUR_12, timeframes.DAY_1]
37
+
33
38
  exchange_info = {
34
39
  # BYBIT_USDT_PERPETUAL
35
40
  exchanges_enums.BYBIT_USDT_PERPETUAL: {
@@ -404,6 +409,39 @@ exchange_info = {
404
409
  },
405
410
  "required_live_plan": "free",
406
411
  },
412
+ # Lighter (ZK-rollup orderbook perp DEX, USDC-settled).
413
+ # backtesting is False: Lighter only serves a ~130-day rolling candle window, too
414
+ # shallow for meaningful backtests. The import driver is still registered so the live
415
+ # runtime can fetch warm-up candles.
416
+ exchanges_enums.LIGHTER_PERPETUAL: {
417
+ "name": exchanges_enums.LIGHTER_PERPETUAL,
418
+ "url": "https://lighter.xyz",
419
+ "fee": 0.0, # Lighter currently charges 0 maker/taker fees on perps
420
+ "type": "futures",
421
+ # Lighter displays markets as BASE-USD (collateral is USDC, handled in the driver);
422
+ # omit settlement_currency so Jesse derives "USD" from the symbol, like Hyperliquid.
423
+ "supported_leverage_modes": ["cross", "isolated"],
424
+ "supported_timeframes": LIGHTER_TIMEFRAMES,
425
+ "modes": {
426
+ "backtesting": False,
427
+ "live_trading": True,
428
+ },
429
+ "required_live_plan": "premium",
430
+ },
431
+ exchanges_enums.LIGHTER_PERPETUAL_TESTNET: {
432
+ "name": exchanges_enums.LIGHTER_PERPETUAL_TESTNET,
433
+ "url": "https://testnet.app.lighter.xyz",
434
+ "fee": 0.0,
435
+ "type": "futures",
436
+ # markets display as BASE-USD; settlement_currency derived from the symbol (USD)
437
+ "supported_leverage_modes": ["cross", "isolated"],
438
+ "supported_timeframes": LIGHTER_TIMEFRAMES,
439
+ "modes": {
440
+ "backtesting": False,
441
+ "live_trading": True,
442
+ },
443
+ "required_live_plan": "free",
444
+ },
407
445
  }
408
446
 
409
447
  # list of supported exchanges for backtesting
@@ -51,16 +51,18 @@ Jesse provides comprehensive documentation through MCP resources.
51
51
  Key resources include:
52
52
 
53
53
  - jesse://strategy - Strategy structure and required methods and How strategies execute candle-by-candle
54
+ - jesse://strategy_examples - Library of complete, worked example strategies (full, runnable references)
54
55
  - jesse://indicator - Step-by-step guide for discovering and using indicators and Essential indicators and candle data access
55
56
  - jesse://position_risk - Position sizing utilities and formulas and Risk management patterns and exit strategies
56
57
  - jesse://utilities - Helper functions for calculations and analysis
57
- - jesse://backtest-management - Backtest creation, configuration, workflow and common strategy development pitfalls and solutions
58
+ - jesse://backtest_management - Backtest creation, configuration, workflow and common strategy development pitfalls and solutions
59
+ - jesse://backtest_metrics - Backtest result metrics reference and interpretation
58
60
  - jesse://candle - Data import and candle data management
59
61
  - jesse://configuration - System configuration and exchange settings
60
62
  - jesse://significance_test - Rule Significance Testing workflow, tool reference, and result interpretation
61
63
  - jesse://monte_carlo - Monte Carlo simulation workflow, summary metrics interpretation, and tool reference
62
64
 
63
- **CRITICAL**: Always consult `jesse://backtest-management` first when encountering strategy creation or backtesting errors. This resource contains solutions to the most common problems encountered during development.
65
+ **CRITICAL**: Always consult `jesse://backtest_management` first when encountering strategy creation or backtesting errors. This resource contains solutions to the most common problems encountered during development.
64
66
 
65
67
 
66
68
 
@@ -89,6 +91,24 @@ Indicators & Utilities:
89
91
  - Consult MCP resources for available options and usage patterns. fetch only the required snippet.
90
92
 
91
93
 
94
+ === STRATEGY CODING RULES ===
95
+
96
+ High-signal Jesse strategy-authoring gotchas (full detail in jesse://strategy):
97
+
98
+ - Smart orders auto-select type: set `self.buy`/`self.sell = qty, price` and Jesse picks the order type from price vs current price — equal/near current = MARKET; for a BUY, price below current = LIMIT, price above = STOP (mirror for SELL: above = LIMIT, below = STOP). Never hand-pick market/limit/stop.
99
+ - Read the current stop with `self.average_stop_loss`, never `self.stop_loss[1]`. After formatting, `self.stop_loss` is a 2D array `[[qty, price], ...]`, so `[1]` is the second order row (often IndexError), not a price.
100
+ - There is NO `self.trailing_stop` attribute. Implement trailing stops by reassigning `self.stop_loss = self.position.qty, <new_price>` inside `update_position()` (e.g. `min(self.average_stop_loss, self.ema)` for longs).
101
+ - Lookahead bias is handled internally — do NOT shift to a previous candle's indicator value. The current (closed) candle's close is not future data, even on larger timeframes.
102
+ - Default the indicator source to closing price and do NOT pass optional params: unless the user asks, omit `period`/`source` so each indicator uses its defaults (closing price is already the default source).
103
+ - Do NOT write filter functions unless explicitly asked — use plain `if` conditions inside `go_long`/`go_short`.
104
+ - `self.position.qty` is 0 / unavailable inside `go_long`/`go_short` (position isn't open yet). It's only meaningful from `on_open_position` onward.
105
+ - Inside `on_open_position`, check `self.is_long` / `self.is_short` before setting `self.stop_loss` / `self.take_profit`.
106
+ - On **spot**, shorting is unsupported: `should_short()` must return `False`, leverage is always `1`, and `stop_loss`/`take_profit` must be set in `on_open_position()` (not `go_long()`).
107
+ - Size from `self.available_margin` (or balance/capital), price, and `self.fee_rate` via sizing utilities (`size_to_qty`, `risk_to_qty`) — never hardcode a fixed quantity.
108
+
109
+ For full structure, lifecycle, and complete runnable examples see jesse://strategy and jesse://strategy_examples.
110
+
111
+
92
112
  === STRATEGY DEVELOPMENT ===
93
113
 
94
114
  Improvement Workflow:
@@ -286,7 +306,7 @@ Backtest Resume Rule (MCP reconnect-safe):
286
306
  - If failed due to missing candles, import the missing data (with warmup buffer), then rerun from updated draft/session settings.
287
307
  - Avoid duplicate concurrent runs for the same exchange-symbol-strategy-timeframe and date range.
288
308
 
289
- Reference: See `jesse://backtest-management` resource for detailed tool documentation, examples, and advanced usage patterns.
309
+ Reference: See `jesse://backtest_management` resource for detailed tool documentation, examples, and advanced usage patterns.
290
310
 
291
311
  === RULE SIGNIFICANCE TESTING (ENTRY SIGNAL VALIDATION) ===
292
312
 
@@ -325,9 +325,9 @@ draft2 = create_backtest_draft(
325
325
 
326
326
  **Error**: `Strategy.get_candles() missing required positional argument`
327
327
 
328
- **Cause**: Attempting to access multi-timeframe data within a single strategy.
328
+ **Cause**: Calling `self.get_candles()` with too few arguments — it requires all three: `exchange`, `symbol`, and `timeframe`.
329
329
 
330
- **Solution**: Jesse strategies run on one timeframe. Use separate backtests for multi-timeframe analysis.
330
+ **Solution**: Multi-timeframe access within a single strategy IS supported. Call `self.get_candles(self.exchange, self.symbol, '4h')` with all three arguments (Jesse handles lookahead across timeframes internally). See the Multi-Timeframe section of `jesse://strategy`.
331
331
 
332
332
  ### Configuration Loading Error
333
333
 
@@ -408,26 +408,23 @@ strategy development for backtesting, based on real development experiences.
408
408
 
409
409
  === 1. Multi-Timeframe Data Access ===
410
410
 
411
- PROBLEM: Attempting to access higher timeframe data within strategy logic
411
+ PROBLEM: `self.get_candles()` raises "missing required positional argument"
412
412
  ```
413
- # WRONG - This doesn't work as expected
413
+ # WRONG - get_candles needs exchange, symbol AND timeframe
414
414
  candles_4h = self.get_candles('4h')
415
- candles_1h = self.get_candles('1h')
416
415
  ```
417
416
 
418
- SOLUTION: Jesse strategies run on a single timeframe. For multi-timeframe strategies:
419
- - Create separate backtests for each timeframe
420
- - Use the primary timeframe for execution
421
- - Access indicators from the strategy's assigned timeframe only
422
-
423
- CORRECT APPROACH: Run separate backtests for different timeframes
417
+ SOLUTION: Multi-timeframe access within ONE strategy is fully supported. Call
418
+ self.get_candles(exchange, symbol, timeframe) with all three arguments — Jesse
419
+ handles lookahead bias across timeframes internally, so a higher-timeframe
420
+ candle's close is never future data.
424
421
  ```
425
- # Backtest 1: 4h timeframe strategy
426
- {"exchange": "Binance Spot", "strategy": "MyStrategy", "symbol": "BTC-USDT", "timeframe": "4h"}
427
-
428
- # Backtest 2: 1h timeframe strategy
429
- {"exchange": "Binance Spot", "strategy": "MyStrategy", "symbol": "BTC-USDT", "timeframe": "1h"}
422
+ # CORRECT - read a higher timeframe inside the same strategy
423
+ candles_4h = self.get_candles(self.exchange, self.symbol, '4h')
424
+ trend_ema = ta.ema(candles_4h, 50)
430
425
  ```
426
+ Typically expose it as a @property (e.g. candles_4h). See the Multi-Timeframe
427
+ section of jesse://strategy for the canonical pattern.
431
428
 
432
429
  === 2. Balance vs Capital Confusion ===
433
430
 
@@ -598,7 +595,7 @@ When encountering errors:
598
595
  → Use update_position() for spot trading exits
599
596
 
600
597
  "Strategy.get_candles() missing required positional argument"
601
- → Strategies work on single timeframe; use separate backtests for multi-timeframe
598
+ → get_candles needs all three args: self.get_candles(self.exchange, self.symbol, '4h'). Multi-timeframe within one strategy is supported (see jesse://strategy).
602
599
 
603
600
  "'Strategy' object has no attribute 'capital'"
604
601
  → Use self.balance instead of self.capital
@@ -16,7 +16,7 @@ for a given route, timeframe, and date range.
16
16
 
17
17
  Correct flow:
18
18
 
19
- 1. Run the backtest (see `jesse://backtest-management`).
19
+ 1. Run the backtest (see `jesse://backtest_management`).
20
20
  2. If — and only if — it fails with a missing-candle error, call
21
21
  `import_candles()` starting ~2 months before the user's `start_date`.
22
22
  3. Poll `get_candle_import_status(import_id)` until `"finished"`, then
@@ -106,7 +106,7 @@ Jesse Indicator Reference
106
106
  ### Volatility & Channels
107
107
  ```python
108
108
  ta.atr(self.candles, period=14) # Average True Range
109
- ta.bollinger_bands(self.candles) # Bollinger Bands (upper, middle, lower)
109
+ ta.bollinger_bands(self.candles) # Bollinger Bands (upperband, middleband, lowerband)
110
110
  ta.keltner(self.candles) # Keltner Channels
111
111
  ta.donchian(self.candles) # Donchian Channels
112
112
  ```
@@ -321,13 +321,13 @@ if macd_result.hist > 0 and macd_result.macd > macd_result.signal:
321
321
  ### Example: Bollinger Bands (returns namedtuple)
322
322
  ```python
323
323
  # From get_indicator_details("bollinger_bands"):
324
- # signature: (candles, period=20, devup=2.0, devdn=2.0) -> BollingerBands(upper, middle, lower)
324
+ # signature: (candles, period=20, devup=2.0, devdn=2.0) -> BollingerBands(upperband, middleband, lowerband)
325
325
 
326
326
  bb = ta.bollinger_bands(self.candles)
327
- # Returns: BollingerBands(upper=..., middle=..., lower=...)
327
+ # Returns: BollingerBands(upperband=..., middleband=..., lowerband=...)
328
328
 
329
329
  price = self.close
330
- if price <= bb.lower:
330
+ if price <= bb.lowerband:
331
331
  # Price touched lower band
332
332
  return True
333
333
  ```