Skip to content

Knowledge library

Summaries and key ideas, written by Stratmill's research agent, of the books, papers, articles and code our AI agents read. Each page links to its original.

Quant Q&A
20,364 documents
SuperMind
12,226 documents
OKX Learn
8,431 documents
Strategy library
7,910 documents
MQL5 code base
7,090 documents
BigQuant
3,481 documents
Bitget Academy
3,298 documents
MQL5 articles
3,012 documents
TradingView scripts
1,976 documents
ProRealCode
1,507 documents
Deribit Insights
1,232 documents
Machine Learning for Trading
1,124 documents
arXiv papers
1,033 documents
Amberdata research
766 documents
FMZ forum
682 documents
FMZ digest
662 documents
vn.py community
560 documents
QuantInsti blog
511 documents
Galaxy Research
340 documents
QuantStart
246 documents
Stratmill research code
219 documents
Robot Wealth
195 documents
NautilusTrader
191 documents
Hummingbot docs
181 documents
Paradigm research
175 documents
Lumibot
164 documents
Kraken Learn
163 documents
Quant course library
157 documents
OctoBot
152 documents
Cryptohopper blog
144 documents
Systematic trading blog (Rob Carver)
132 documents
Qlib
116 documents
TqSdk
86 documents
Quantpedia
86 documents
Hyperliquid docs
79 documents
Freqtrade
68 documents
Hudson & Thames
62 documents
Awesome Systematic Trading
61 documents
backtrader
54 documents
vn.py
50 documents
Binance API docs
45 documents
Quantopian lectures
45 documents
FMZ guides
38 documents
pysystemtrade
34 documents
Freqtrade docs
32 documents
quant-trading
31 documents
FinRL
28 documents
Zipline
22 documents
FMZ live strategies
21 documents
Jesse
17 documents
pyfolio
16 documents
Alphalens
14 documents
WonderTrader
14 documents
backtesting.py
11 documents
Technical Analysis
9 documents
QTPyLib
8 documents
QuantRocket
7 documents
Lumibot strategies
7 documents
Awesome Quant
1 documents

Search the library

59 documents

vn.py community

The post questions whether the minimum option price checks used before implied volatility calculations are correct in the Black–Scholes and Black–76 models. It observes that the two implementations use the same expressions, even though Black–76 uses a…

OptionsDerivatives pricingStatistics
vn.py community

This forum question examines why changing the initialization length of a trading system’s ArrayManager can materially alter a backtest. The strategy uses RSI generated through TA-Lib, and the author suspects that the indicator’s path dependence makes its…

BacktestingTechnical indicatorsRisk managementStatistics
vn.py community

This Chinese-language forum post concerns calculating higher-timeframe indicators in real time from a lower-timeframe bar callback, such as updating 30- or 60-minute KDJ or RSI while processing five-minute bars. The example creates separate bar generators…

Technical indicatorsMachine learningStatistics
vn.py community

The discussion describes a rolling-window backtest in which parameters are optimized on a sequence of historical months and then applied to the next month. As the test advances, the training window shifts forward by one month, so each new period is evaluated…

BacktestingStatistics
vn.py community

A trader asks where an individual can access tick-by-tick trades that include buyer or seller initiation, intending to calculate aggressive buying and selling volume at each price for an order-imbalance strategy. The reply says that ready-made aggressor-side…

Market microstructureExecutionStatistics
vn.py community

This forum exchange addresses a question about changing historical EMA readings and repeated signals in a VeighNa CTA strategy using ArrayManager. The answer explains EMA as a recursive indicator: each new bar updates the current value using the latest price…

Technical indicatorsStatisticsFutures
vn.py community

This forum exchange clarifies how VeighNa’s CTA strategy state file is used during initialization. A strategy first derives variable values from historical data and indicators, then reads saved JSON data to overwrite corresponding strategy variables.…

FuturesBacktestingStatistics
vn.py community

The article describes an integrated order flow imbalance factor built from changes in bid and ask quantities across five limit order book levels. It explains how each level’s imbalance can be normalized by typical depth, then combined with principal…

EquitiesMarket microstructureStatisticsFactor investing
vn.py community

A user reports that minute-bar open and close prices generated from CTP market data sometimes differ from values shown in mainstream trading software, with discrepancies of about one currency unit. The reply identifies a timestamp convention as a possible…

FuturesMarket microstructureStatistics
vn.py community

This forum discussion documents installation problems while setting up vnpy_ctp on a freshly reinstalled Intel Mac. The initial failure occurred during an editable package installation because pip could not obtain the required meson-python dependency. A…

Statistics
vn.py community

This document lays out a sequence of practical exercises for learning quantitative trading with VN.PY. The projects cover market data retrieval and database storage, vectorized indicator calculations, CTA strategy development, cleaning futures data, and…

FuturesBacktestingStatisticsRisk management
vn.py community

This community post reports a failure in a VeighNa CTA backtest on Windows with a Tushare data service. Historical one-minute futures data downloads successfully and the strategy loads, but the run fails when the backtesting engine calculates performance…

BacktestingFuturesStatistics
vn.py community

This forum post reports a possible data-handling issue in a bar generator that aggregates ticks into one-minute bars. When the first tick arrives just after 9:30, its last traded price is used to initialize the bar’s open, high, low, and close. The post says…

Market microstructureStatistics
vn.py community

A VeighNa community exchange answers whether the `self.sync_data()` method is available in version 2.5.7 spread-trading strategies. A user reports that the method works in CTA strategies but raises an error when called from a spread strategy while attempting…

Pairs tradingExecutionMarket microstructureStatistics
vn.py community

The forum post addresses why the Average True Range calculated in VeighNa may differ substantially from the value shown in TradingView. It proposes checking several potential causes: differences in the ATR formula or smoothing method, discrepancies in the…

Technical indicatorsVolatilityStatistics
vn.py community

The article recommends cleaning tick data before using it in strategy research or backtests, since duplicate records, implausible prices, out-of-order timestamps, and missing fields can distort results. Its example workflow sorts records by timestamp,…

Market microstructureBacktestingStatistics
vn.py community

This VeighNa community contribution describes additions to a backtesting statistics engine for evaluating strategies with regressed annual return (RAR), R-Cubed, and Robust Sharpe. RAR is calculated by regressing cumulative returns across time intervals and…

BacktestingStatisticsRisk management
vn.py community

This short forum exchange concerns a VeighNa Trader configuration error. An initial response interprets an invalid integer conversion as a nonnumeric value in a field expected to contain an integer and recommends deleting the settings file so the application…

Statistics
vn.py community

A trader reports an error while running an rb-hc spread strategy in a simulated environment. The failure occurs when the strategy attempts to convert its current grid position into an integer target position, but the value is NaN. The trader suspects that a…

CommoditiesPairs tradingStatisticsExecution
vn.py community

This forum exchange explains why a futures backtest can differ from a course example even when the strategy and settings are the same: the data series may be revised over time. It describes the platform’s 888 series as a continuously smoothed main-contract…

FuturesBacktestingStatistics
vn.py community

This forum exchange concerns missing hourly bars created by aggregating minute data for a futures contract. A user reports that the stored hourly series is incomplete on a particular date, despite the underlying minute records appearing intact, and later…

FuturesStatistics
vn.py community

This excerpt describes a problem while building a five-minute bar series from minute bars or ticks with VeighNa’s BarGenerator and storing the results in an ArrayManager. The author reports that keeping direct edits to arrays such as close and high arrays…

StatisticsBacktesting
vn.py community

The article explains how to calculate the Resistance Support Relative Strength (RSRS) market-timing indicator more quickly. RSRS fits a rolling regression of highs against lows; its slope is used as a measure of the relationship between resistance and…

StatisticsTechnical indicatorsBacktestingChina markets
vn.py community

The document outlines a training program on cross-sectional multi-factor strategies, also described as alpha strategies. Its curriculum spans factor data preparation, supervised learning, model evaluation and interpretation, portfolio construction, and…

Machine learningFactor investingPortfolio constructionBacktesting