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.
- adrs-1.1.2/.gitignore +24 -0
- adrs-1.1.2/.pre-commit-config.yaml +19 -0
- adrs-1.1.2/.python-version +1 -0
- adrs-1.1.2/CHANGELOG.md +76 -0
- adrs-1.1.2/LICENSE +661 -0
- adrs-1.1.2/PKG-INFO +704 -0
- adrs-1.1.2/README.md +17 -0
- adrs-1.1.2/adrs/__init__.py +4 -0
- adrs-1.1.2/adrs/alpha.py +98 -0
- adrs-1.1.2/adrs/data/__init__.py +51 -0
- adrs-1.1.2/adrs/data/cache.py +216 -0
- adrs-1.1.2/adrs/data/dataloader.py +76 -0
- adrs-1.1.2/adrs/data/datamap.py +234 -0
- adrs-1.1.2/adrs/data/datasource.py +268 -0
- adrs-1.1.2/adrs/data/handler.py +61 -0
- adrs-1.1.2/adrs/data/processor.py +85 -0
- adrs-1.1.2/adrs/data/types.py +32 -0
- adrs-1.1.2/adrs/data/utils.py +39 -0
- adrs-1.1.2/adrs/installer.py +116 -0
- adrs-1.1.2/adrs/json.py +94 -0
- adrs-1.1.2/adrs/logging.py +76 -0
- adrs-1.1.2/adrs/performance/__init__.py +3 -0
- adrs-1.1.2/adrs/performance/evaluator.py +90 -0
- adrs-1.1.2/adrs/performance/metric/__init__.py +6 -0
- adrs-1.1.2/adrs/performance/metric/drawdown.py +85 -0
- adrs-1.1.2/adrs/performance/metric/metric.py +9 -0
- adrs-1.1.2/adrs/performance/metric/ratio.py +54 -0
- adrs-1.1.2/adrs/performance/metric/trade.py +106 -0
- adrs-1.1.2/adrs/portfolio.py +410 -0
- adrs-1.1.2/adrs/report/__init__.py +3 -0
- adrs-1.1.2/adrs/report/alpha.py +237 -0
- adrs-1.1.2/adrs/report/portfolio.py +128 -0
- adrs-1.1.2/adrs/search/__init__.py +12 -0
- adrs-1.1.2/adrs/search/grid.py +21 -0
- adrs-1.1.2/adrs/search/random.py +96 -0
- adrs-1.1.2/adrs/search/search.py +35 -0
- adrs-1.1.2/adrs/tests/__init__.py +3 -0
- adrs-1.1.2/adrs/tests/sensitivity.py +105 -0
- adrs-1.1.2/adrs/types.py +613 -0
- adrs-1.1.2/adrs/utils.py +37 -0
- adrs-1.1.2/alpha_with_external_data.parquet +0 -0
- adrs-1.1.2/cliff.toml +92 -0
- adrs-1.1.2/examples/alpha_with_custom_datasource.py +275 -0
- adrs-1.1.2/examples/alpha_with_external_data.py +185 -0
- adrs-1.1.2/examples/download.py +52 -0
- adrs-1.1.2/examples/example_alpha.py +165 -0
- adrs-1.1.2/examples/portfolio.py +259 -0
- adrs-1.1.2/examples/yfinance_data.py +46 -0
- adrs-1.1.2/justfile +17 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-11-29.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-11-30.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-01.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-02.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-03.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-04.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-05.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-06.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-07.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-08.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-09.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-10.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-11.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-12.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-13.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-14.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-15.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-16.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-17.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-18.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-19.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-20.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-21.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-22.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-23.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-24.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-25.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-26.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-27.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-28.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-29.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-30.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2025-12-31.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2026-01-01.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2026-01-02.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_BTCUSDT_2026-01-03.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-11-29.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-11-30.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-01.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-02.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-03.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-04.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-05.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-06.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-07.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-08.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-09.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-10.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-11.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-12.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-13.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-14.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-15.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-16.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-17.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-18.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-19.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-20.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-21.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-22.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-23.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-24.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-25.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-26.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-27.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-28.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-29.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-30.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2025-12-31.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2026-01-01.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2026-01-02.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1h_symbol_ETHUSDT_2026-01-03.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-01.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-02.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-03.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-04.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-05.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-06.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-07.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-08.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-09.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-10.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-11.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-12.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-13.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-14.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-15.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-16.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-17.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-18.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-19.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-20.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-21.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-22.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-23.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-24.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-25.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-26.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-27.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-28.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-29.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-30.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2025-12-31.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2026-01-01.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2026-01-02.parquet +0 -0
- adrs-1.1.2/outdir/binance-spot/candle/interval_1m_symbol_ETHUSDT_2026-01-03.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-01.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-02.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-03.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-04.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-05.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-06.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-07.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-08.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-09.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-10.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-11.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-12.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-13.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-14.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-15.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-16.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-17.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-18.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-19.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-20.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-21.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-22.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-23.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-24.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-25.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-26.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-27.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-28.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-29.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-30.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2025-12-31.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2026-01-01.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2026-01-02.parquet +0 -0
- adrs-1.1.2/outdir/bybit-linear/candle/interval_1m_symbol_BTCUSDT_2026-01-03.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-11-29.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-11-30.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-01.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-02.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-03.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-04.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-05.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-06.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-07.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-08.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-09.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-10.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-11.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-12.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-13.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-14.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-15.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-16.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-17.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-18.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-19.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-20.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-21.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-22.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-23.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-24.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-25.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-26.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-27.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-28.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-29.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-30.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2025-12-31.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2026-01-01.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2026-01-02.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_BTC_USD_2026-01-03.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-11-29.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-11-30.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-01.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-02.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-03.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-04.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-05.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-06.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-07.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-08.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-09.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-10.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-11.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-12.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-13.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-14.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-15.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-16.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-17.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-18.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-19.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-20.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-21.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-22.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-23.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-24.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-25.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-26.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-27.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-28.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-29.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-30.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2025-12-31.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2026-01-01.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2026-01-02.parquet +0 -0
- adrs-1.1.2/outdir/coinbase/candle/interval_1h_symbol_ETH_USD_2026-01-03.parquet +0 -0
- adrs-1.1.2/pyproject.toml +61 -0
- adrs-1.1.2/scripts/build.py +70 -0
- adrs-1.1.2/tests/test_dataloader.py +24 -0
- adrs-1.1.2/tests/test_datamap.py +66 -0
- adrs-1.1.2/tests/test_datasource.py +128 -0
- adrs-1.1.2/tests/test_json.py +27 -0
- adrs-1.1.2/tests/test_report.py +461 -0
- adrs-1.1.2/tests/test_search.py +48 -0
- adrs-1.1.2/tests/test_symbol.py +77 -0
- adrs-1.1.2/tests/test_topic.py +241 -0
- adrs-1.1.2/tests/test_utils.py +47 -0
- 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
|
adrs-1.1.2/CHANGELOG.md
ADDED
|
@@ -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
|