The article explains how to extend a linear model into a simple artificial neuron by adding an intercept, called bias, alongside the slope, called weight. It uses mean squared error over training examples as a cost function and estimates each parameter’s…
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.
Search the library
3,012 documents
This article introduces Bill Williams' Accelerator Oscillator (AC), a momentum measure calculated as the Awesome Oscillator minus its short moving average. It explains the indicator's zero line as a directional reference and gives simple rule sets: readings…
This article explains how Exponential GARCH models address a limitation of standard GARCH estimation: positivity constraints on conditional variance can force parameters to boundaries and restrict the fit. EGARCH models the logarithm of variance, keeping…
This article proposes evaluating social trading signals by inspecting the trades that generated their reported returns, rather than relying only on headline growth, subscriber count, and drawdown. It defines entry quality using maximum adverse excursion…
This article describes additions to an MQL5/MQL4 symbol-selection utility that help traders inspect intraday charts. It explains filters that hide symbols when the current day's direction differs from the previous day's, and chart overlays for session…
This installment introduces the design challenges of a market replay and simulation system for MetaTrader 5. It emphasizes preserving historical tick data: once detailed ticks are compressed into minute bars, the original sequence cannot be reconstructed…
The document explains cluster indicators as a way to estimate the relative movement of several currencies from a network of currency-pair quotes. Pair changes are apportioned between the currencies involved, producing relative currency lines whose sum is…
The article describes an automated short-term trading approach built around Parabolic SAR and a 60-period Simple Moving Average. SAR dots above or below price are used to indicate bearish or bullish conditions, while the SMA slope acts as a broader trend…
This article describes a Python workflow for running one Expert Advisor-style strategy function in both live MetaTrader 5 trading and historical simulation. A VirtualMetaTrader5 object mirrors key methods, constants, and properties of the MetaTrader 5 Python…
The document introduces ARIMA as a time-series forecasting approach combining autoregressive terms, differencing, and moving-average terms based on past forecast errors. It describes fitting model coefficients to historical observations with a likelihood…
This article explains principal component analysis (PCA) as a preprocessing method for compressing correlated inputs before they enter a trading decision model. It frames the problem around large sets of indicators, instruments, and timeframes: reducing…
The article develops a BuySellVolume indicator that estimates tick activity from the price change between consecutive ticks divided by elapsed time. Positive price changes contribute to a buyer buffer and negative changes to a seller buffer. It explains how…
This article describes an MQL4 function that searches for extrema in the Accumulation/Distribution indicator, draws trend lines through selected peaks and troughs, and detects when the indicator crosses those lines. It returns the crossing direction and can…
The article explores whether independent components analysis (ICA) can separate structure from noise in market data already smoothed by moving averages. It constructs a dataset from raw and SMA-filtered open, high, low, and close prices, along with lagged…
This tutorial explains how to adapt a single-buffer custom indicator into a two-buffer Aroon indicator in MQL5. It presents bullish and bearish calculations based on the positions of the highest high and lowest low within a lookback period. The two series…
The article proposes an advanced ZigZag indicator that estimates both the evolving current turning point and the level of the next one. It builds separate pools of moving average envelopes for peaks and troughs, using different averaging periods and high or…
Synthetic bars use price movement instead of elapsed time to determine when a bar closes. A user sets a bar-height threshold, and the indicator processes incoming ticks: the first tick sets the open, later ticks update the high or low, and the bar closes…
TrendLoom is a chart panel that combines simple moving average readings across three timeframes to provide a BUY, SELL, or NEUTRAL signal. The tool offers seven timeframe combinations intended for different trading horizons, from short-term analysis to…
This article adapts closed-loop control theory to a moving average channel strategy. The baseline buys when price breaks above a channel formed from moving averages of highs and lows, and sells on a break below. A controller first observes 90 days of market…
This article examines moving-average slope as a measure of trend direction and strength, then questions the usual conversion of slope to an angle with an inverse tangent. Because price and time use different scales, the conventional angle changes…
This article explains how an MQL5 Expert Advisor can use OnTrade events to detect changes to positions and pending orders and generate reports or notifications. Its implementation tracks prior and current counts of active orders and positions, then examines…
This article shows how to extend MetaTrader 5 indicator visuals with the CCanvas custom graphics library. It organizes the implementation as reusable classes: a base class manages canvas creation, deletion, position, and size, while derived classes build…
This article introduces sockets as a way to exchange data between MetaTrader 5 and external programs in both directions. It contrasts TCP stream sockets, which aim to deliver data reliably and in order, with UDP datagram sockets, which prioritize speed while…
The article presents an object-oriented MQL5 scanner for detecting and displaying Fair Value Gaps (FVGs). It defines bullish and bearish gaps through a three-candle comparison, loads historical OHLC data with CopyRates, and checks that enough data is…