adrs 1.1.2__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 (273) hide show
  1. adrs-1.1.2/.gitignore +24 -0
  2. adrs-1.1.2/.pre-commit-config.yaml +19 -0
  3. adrs-1.1.2/.python-version +1 -0
  4. adrs-1.1.2/CHANGELOG.md +76 -0
  5. adrs-1.1.2/LICENSE +661 -0
  6. adrs-1.1.2/PKG-INFO +704 -0
  7. adrs-1.1.2/README.md +17 -0
  8. adrs-1.1.2/adrs/__init__.py +4 -0
  9. adrs-1.1.2/adrs/alpha.py +98 -0
  10. adrs-1.1.2/adrs/data/__init__.py +51 -0
  11. adrs-1.1.2/adrs/data/cache.py +216 -0
  12. adrs-1.1.2/adrs/data/dataloader.py +76 -0
  13. adrs-1.1.2/adrs/data/datamap.py +234 -0
  14. adrs-1.1.2/adrs/data/datasource.py +268 -0
  15. adrs-1.1.2/adrs/data/handler.py +61 -0
  16. adrs-1.1.2/adrs/data/processor.py +85 -0
  17. adrs-1.1.2/adrs/data/types.py +32 -0
  18. adrs-1.1.2/adrs/data/utils.py +39 -0
  19. adrs-1.1.2/adrs/installer.py +116 -0
  20. adrs-1.1.2/adrs/json.py +94 -0
  21. adrs-1.1.2/adrs/logging.py +76 -0
  22. adrs-1.1.2/adrs/performance/__init__.py +3 -0
  23. adrs-1.1.2/adrs/performance/evaluator.py +90 -0
  24. adrs-1.1.2/adrs/performance/metric/__init__.py +6 -0
  25. adrs-1.1.2/adrs/performance/metric/drawdown.py +85 -0
  26. adrs-1.1.2/adrs/performance/metric/metric.py +9 -0
  27. adrs-1.1.2/adrs/performance/metric/ratio.py +54 -0
  28. adrs-1.1.2/adrs/performance/metric/trade.py +106 -0
  29. adrs-1.1.2/adrs/portfolio.py +410 -0
  30. adrs-1.1.2/adrs/report/__init__.py +3 -0
  31. adrs-1.1.2/adrs/report/alpha.py +237 -0
  32. adrs-1.1.2/adrs/report/portfolio.py +128 -0
  33. adrs-1.1.2/adrs/search/__init__.py +12 -0
  34. adrs-1.1.2/adrs/search/grid.py +21 -0
  35. adrs-1.1.2/adrs/search/random.py +96 -0
  36. adrs-1.1.2/adrs/search/search.py +35 -0
  37. adrs-1.1.2/adrs/tests/__init__.py +3 -0
  38. adrs-1.1.2/adrs/tests/sensitivity.py +105 -0
  39. adrs-1.1.2/adrs/types.py +613 -0
  40. adrs-1.1.2/adrs/utils.py +37 -0
  41. adrs-1.1.2/alpha_with_external_data.parquet +0 -0
  42. adrs-1.1.2/cliff.toml +92 -0
  43. adrs-1.1.2/examples/alpha_with_custom_datasource.py +275 -0
  44. adrs-1.1.2/examples/alpha_with_external_data.py +185 -0
  45. adrs-1.1.2/examples/download.py +52 -0
  46. adrs-1.1.2/examples/example_alpha.py +165 -0
  47. adrs-1.1.2/examples/portfolio.py +259 -0
  48. adrs-1.1.2/examples/yfinance_data.py +46 -0
  49. adrs-1.1.2/justfile +17 -0
  50. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-11-29.parquet +0 -0
  51. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-11-30.parquet +0 -0
  52. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-01.parquet +0 -0
  53. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-02.parquet +0 -0
  54. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-03.parquet +0 -0
  55. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-04.parquet +0 -0
  56. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-05.parquet +0 -0
  57. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-06.parquet +0 -0
  58. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-07.parquet +0 -0
  59. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-08.parquet +0 -0
  60. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-09.parquet +0 -0
  61. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-10.parquet +0 -0
  62. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-11.parquet +0 -0
  63. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-12.parquet +0 -0
  64. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-13.parquet +0 -0
  65. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-14.parquet +0 -0
  66. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-15.parquet +0 -0
  67. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-16.parquet +0 -0
  68. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-17.parquet +0 -0
  69. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-18.parquet +0 -0
  70. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-19.parquet +0 -0
  71. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-20.parquet +0 -0
  72. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-21.parquet +0 -0
  73. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-22.parquet +0 -0
  74. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-23.parquet +0 -0
  75. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-24.parquet +0 -0
  76. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-25.parquet +0 -0
  77. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-26.parquet +0 -0
  78. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-27.parquet +0 -0
  79. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-28.parquet +0 -0
  80. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-29.parquet +0 -0
  81. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-30.parquet +0 -0
  82. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-31.parquet +0 -0
  83. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2026-01-01.parquet +0 -0
  84. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2026-01-02.parquet +0 -0
  85. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2026-01-03.parquet +0 -0
  86. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-11-29.parquet +0 -0
  87. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-11-30.parquet +0 -0
  88. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-01.parquet +0 -0
  89. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-02.parquet +0 -0
  90. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-03.parquet +0 -0
  91. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-04.parquet +0 -0
  92. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-05.parquet +0 -0
  93. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-06.parquet +0 -0
  94. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-07.parquet +0 -0
  95. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-08.parquet +0 -0
  96. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-09.parquet +0 -0
  97. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-10.parquet +0 -0
  98. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-11.parquet +0 -0
  99. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-12.parquet +0 -0
  100. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-13.parquet +0 -0
  101. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-14.parquet +0 -0
  102. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-15.parquet +0 -0
  103. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-16.parquet +0 -0
  104. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-17.parquet +0 -0
  105. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-18.parquet +0 -0
  106. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-19.parquet +0 -0
  107. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-20.parquet +0 -0
  108. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-21.parquet +0 -0
  109. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-22.parquet +0 -0
  110. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-23.parquet +0 -0
  111. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-24.parquet +0 -0
  112. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-25.parquet +0 -0
  113. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-26.parquet +0 -0
  114. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-27.parquet +0 -0
  115. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-28.parquet +0 -0
  116. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-29.parquet +0 -0
  117. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-30.parquet +0 -0
  118. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-31.parquet +0 -0
  119. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2026-01-01.parquet +0 -0
  120. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2026-01-02.parquet +0 -0
  121. adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2026-01-03.parquet +0 -0
  122. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-01.parquet +0 -0
  123. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-02.parquet +0 -0
  124. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-03.parquet +0 -0
  125. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-04.parquet +0 -0
  126. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-05.parquet +0 -0
  127. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-06.parquet +0 -0
  128. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-07.parquet +0 -0
  129. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-08.parquet +0 -0
  130. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-09.parquet +0 -0
  131. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-10.parquet +0 -0
  132. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-11.parquet +0 -0
  133. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-12.parquet +0 -0
  134. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-13.parquet +0 -0
  135. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-14.parquet +0 -0
  136. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-15.parquet +0 -0
  137. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-16.parquet +0 -0
  138. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-17.parquet +0 -0
  139. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-18.parquet +0 -0
  140. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-19.parquet +0 -0
  141. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-20.parquet +0 -0
  142. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-21.parquet +0 -0
  143. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-22.parquet +0 -0
  144. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-23.parquet +0 -0
  145. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-24.parquet +0 -0
  146. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-25.parquet +0 -0
  147. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-26.parquet +0 -0
  148. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-27.parquet +0 -0
  149. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-28.parquet +0 -0
  150. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-29.parquet +0 -0
  151. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-30.parquet +0 -0
  152. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-31.parquet +0 -0
  153. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2026-01-01.parquet +0 -0
  154. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2026-01-02.parquet +0 -0
  155. adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2026-01-03.parquet +0 -0
  156. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-01.parquet +0 -0
  157. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-02.parquet +0 -0
  158. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-03.parquet +0 -0
  159. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-04.parquet +0 -0
  160. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-05.parquet +0 -0
  161. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-06.parquet +0 -0
  162. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-07.parquet +0 -0
  163. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-08.parquet +0 -0
  164. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-09.parquet +0 -0
  165. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-10.parquet +0 -0
  166. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-11.parquet +0 -0
  167. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-12.parquet +0 -0
  168. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-13.parquet +0 -0
  169. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-14.parquet +0 -0
  170. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-15.parquet +0 -0
  171. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-16.parquet +0 -0
  172. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-17.parquet +0 -0
  173. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-18.parquet +0 -0
  174. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-19.parquet +0 -0
  175. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-20.parquet +0 -0
  176. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-21.parquet +0 -0
  177. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-22.parquet +0 -0
  178. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-23.parquet +0 -0
  179. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-24.parquet +0 -0
  180. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-25.parquet +0 -0
  181. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-26.parquet +0 -0
  182. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-27.parquet +0 -0
  183. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-28.parquet +0 -0
  184. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-29.parquet +0 -0
  185. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-30.parquet +0 -0
  186. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-31.parquet +0 -0
  187. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2026-01-01.parquet +0 -0
  188. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2026-01-02.parquet +0 -0
  189. adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2026-01-03.parquet +0 -0
  190. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-11-29.parquet +0 -0
  191. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-11-30.parquet +0 -0
  192. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-01.parquet +0 -0
  193. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-02.parquet +0 -0
  194. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-03.parquet +0 -0
  195. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-04.parquet +0 -0
  196. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-05.parquet +0 -0
  197. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-06.parquet +0 -0
  198. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-07.parquet +0 -0
  199. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-08.parquet +0 -0
  200. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-09.parquet +0 -0
  201. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-10.parquet +0 -0
  202. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-11.parquet +0 -0
  203. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-12.parquet +0 -0
  204. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-13.parquet +0 -0
  205. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-14.parquet +0 -0
  206. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-15.parquet +0 -0
  207. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-16.parquet +0 -0
  208. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-17.parquet +0 -0
  209. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-18.parquet +0 -0
  210. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-19.parquet +0 -0
  211. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-20.parquet +0 -0
  212. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-21.parquet +0 -0
  213. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-22.parquet +0 -0
  214. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-23.parquet +0 -0
  215. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-24.parquet +0 -0
  216. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-25.parquet +0 -0
  217. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-26.parquet +0 -0
  218. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-27.parquet +0 -0
  219. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-28.parquet +0 -0
  220. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-29.parquet +0 -0
  221. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-30.parquet +0 -0
  222. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-31.parquet +0 -0
  223. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2026-01-01.parquet +0 -0
  224. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2026-01-02.parquet +0 -0
  225. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2026-01-03.parquet +0 -0
  226. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-11-29.parquet +0 -0
  227. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-11-30.parquet +0 -0
  228. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-01.parquet +0 -0
  229. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-02.parquet +0 -0
  230. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-03.parquet +0 -0
  231. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-04.parquet +0 -0
  232. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-05.parquet +0 -0
  233. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-06.parquet +0 -0
  234. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-07.parquet +0 -0
  235. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-08.parquet +0 -0
  236. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-09.parquet +0 -0
  237. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-10.parquet +0 -0
  238. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-11.parquet +0 -0
  239. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-12.parquet +0 -0
  240. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-13.parquet +0 -0
  241. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-14.parquet +0 -0
  242. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-15.parquet +0 -0
  243. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-16.parquet +0 -0
  244. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-17.parquet +0 -0
  245. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-18.parquet +0 -0
  246. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-19.parquet +0 -0
  247. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-20.parquet +0 -0
  248. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-21.parquet +0 -0
  249. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-22.parquet +0 -0
  250. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-23.parquet +0 -0
  251. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-24.parquet +0 -0
  252. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-25.parquet +0 -0
  253. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-26.parquet +0 -0
  254. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-27.parquet +0 -0
  255. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-28.parquet +0 -0
  256. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-29.parquet +0 -0
  257. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-30.parquet +0 -0
  258. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-31.parquet +0 -0
  259. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2026-01-01.parquet +0 -0
  260. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2026-01-02.parquet +0 -0
  261. adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2026-01-03.parquet +0 -0
  262. adrs-1.1.2/pyproject.toml +61 -0
  263. adrs-1.1.2/scripts/build.py +70 -0
  264. adrs-1.1.2/tests/test_dataloader.py +24 -0
  265. adrs-1.1.2/tests/test_datamap.py +66 -0
  266. adrs-1.1.2/tests/test_datasource.py +128 -0
  267. adrs-1.1.2/tests/test_json.py +27 -0
  268. adrs-1.1.2/tests/test_report.py +461 -0
  269. adrs-1.1.2/tests/test_search.py +48 -0
  270. adrs-1.1.2/tests/test_symbol.py +77 -0
  271. adrs-1.1.2/tests/test_topic.py +241 -0
  272. adrs-1.1.2/tests/test_utils.py +47 -0
  273. adrs-1.1.2/uv.lock +1719 -0
adrs-1.1.2/.gitignore ADDED
@@ -0,0 +1,24 @@
1
+ .DS_Store
2
+ .idea
3
+ *.log
4
+ tmp/
5
+
6
+ *.py[cod]
7
+ *.egg
8
+ build
9
+ htmlcov
10
+ .coverage
11
+
12
+ .direnv/
13
+ .playground/
14
+ # outdir/
15
+ credentials.json
16
+ dist/
17
+ run/
18
+
19
+ .envrc
20
+ *.json
21
+
22
+ mise.local.toml
23
+ # *.parquet
24
+ wheels/
@@ -0,0 +1,19 @@
1
+ # See https://pre-commit.com for more information
2
+ # See https://pre-commit.com/hooks.html for more hooks
3
+ repos:
4
+ - repo: https://github.com/pre-commit/pre-commit-hooks
5
+ rev: v3.2.0
6
+ hooks:
7
+ - id: trailing-whitespace
8
+ - id: end-of-file-fixer
9
+ - id: check-toml
10
+ - id: check-added-large-files
11
+ - repo: https://github.com/astral-sh/uv-pre-commit
12
+ rev: 0.8.17
13
+ hooks:
14
+ - id: uv-lock # Update the uv lockfile
15
+ - repo: https://github.com/astral-sh/ruff-pre-commit
16
+ rev: v0.13.0
17
+ hooks:
18
+ - id: ruff-check # Run the linter.
19
+ - id: ruff-format # Run the formatter.
@@ -0,0 +1 @@
1
+ 3.14
@@ -0,0 +1,76 @@
1
+ ## [1.0.9] - 2026-04-18
2
+
3
+ ### 🚀 Features
4
+
5
+ - Added largest_win and max_holding_time_in_seconds
6
+ ## [1.0.8] - 2026-04-16
7
+
8
+ ### 🚀 Features
9
+
10
+ - Added yfinance data handler
11
+ - Made AlphaReportV1's sensitivity test optional
12
+
13
+ ### 🐛 Bug Fixes
14
+
15
+ - Sortino ratio and cagr
16
+ ## [1.0.7] - 2026-03-12
17
+
18
+ ### ⚙️ Miscellaneous Tasks
19
+
20
+ - Bumped to 1.0.7
21
+ ## [1.0.6] - 2026-02-06
22
+
23
+ ### 🐛 Bug Fixes
24
+
25
+ - Datamap cast to original schema in update() method
26
+ ## [1.0.5] - 2026-01-29
27
+
28
+ ### 🐛 Bug Fixes
29
+
30
+ - Datamap datetime cast time_unit issue
31
+ ## [1.0.4] - 2026-01-15
32
+
33
+ ### 🚀 Features
34
+
35
+ - Updated search implementation to include a 'filter' method
36
+ ## [1.0.3] - 2026-01-05
37
+
38
+ ### 🚀 Features
39
+
40
+ - Allowed 0 paramter in SensitivityTest (indicating skip)
41
+
42
+ ### ⚙️ Miscellaneous Tasks
43
+
44
+ - Bumped version to 1.0.3
45
+ ## [1.0.2] - 2026-01-05
46
+
47
+ ### 🐛 Bug Fixes
48
+
49
+ - Updated portfolio code to work with new alpha api
50
+
51
+ ### ⚙️ Miscellaneous Tasks
52
+
53
+ - Bumped version to 1.0.2
54
+ ## [1.0.1] - 2025-12-27
55
+
56
+ ### 🚀 Features
57
+
58
+ - Added example for custom datasource
59
+ - Added write_parquet() to AlphaReportV1
60
+ ## [1.0.0] - 2025-12-26
61
+
62
+ ### 🚀 Features
63
+
64
+ - Disabled portfolio and updated Alpha api to fit for V1
65
+ ## [0.1.16] - 2025-11-21
66
+
67
+ ### 🚀 Features
68
+
69
+ - Migrated from pyright to pyrefly for type-checking
70
+ - Added Search class and updated Sensitivity
71
+ ## [0.1.15] - 2025-11-20
72
+
73
+ ### 🚀 Features
74
+
75
+ - Updated sensitivity logic and added homepage to pyproject.toml
76
+ ## [0.1.14] - 2025-11-19