Linear4.0指标源码分享




源码如下:
N :=21; // 线性回归拟合周期,影响平滑程度(越小越贴合,越大越平滑)
M :=11; // 信号线平滑周期(影响最终信号线灵敏度)
LINREG_ON := 1; // 1 = 启用类似线性回归平滑,0 = 不平滑,直接用原始数据
SMA_ON := 1; // 1 = 信号线用MA,0 = 用EMA(SMA更稳,EMA更灵敏)
模式 := 2; // 1=HMA结构,2=DEHMA结构,3=线性回归结构
SMA_ON1 :=0; // 1=SMA, 0=EMA
///////////
N2 := ROUND(N / 2, 0);
N3 := ROUND(SQRT(N), 0);
// 1. HMA结构
HMA_BASE := 2 * MA(C, N2) – MA(C, N);
// 2. DEHMA结构(双指数HMA)
DEHMA_BASE := 2 * EMA(C, N2) – EMA(C, N);
DEHMA := EMA(DEHMA_BASE, N3);
// 3. 线性回归结构(简化版)
REG_BASE := (MA(C, N) + C) / 2 + (C – REF(C, N)) / N * (N / 2);
// === 选择信号源 ===
BCLOSE1 := IF(模式 = 1, HMA_BASE,
IF(模式 = 2, DEHMA,
IF(模式 = 3, REG_BASE, C)));
BCLOSE:=IF(LINREG_ON= 1,BCLOSE1,C);
// === 信号线(可选用SMA或EMA) ===
信号线 := IF(SMA_ON = 1, MA(BCLOSE, M), EMA(BCLOSE, M));
RAW_SLOPE := 信号线 – REF(信号线, 1);
信号斜率 := EMA(RAW_SLOPE, 5); // 平滑3日
具体见图
夜雨聆风
