OPEN-SOURCE SCRIPT

DKX & MADKX Indicator

274
//version=6
indicator("DKX & MADKX Indicator", "DKX", false)

// --- Constants ---
var int DKX_period = 15
var int MADKX_period = 7

// --- 1. 计算中间变量 MID ---
// (3 * close + low + open + high) / 6
mid = (3 * close + low + open + high) / 6

// --- 2. 计算 DKX 加权移动平均线 ---
// 注意:Pine Script的 ta.wma() 权重是 (1, 2, 3...),与通达信的反向加权 (20, 19, 18...) 不同。
// 因此,我们需要手动计算这个加权平均。
//
// 手动加权平均公式: Sum(weight * source) / Sum(weight)
// 权重: 20, 19, 18, 17, ..., 3, 2, 1
// 权重的总和: 20 + 19 + ... + 1 = 20 * (20 + 1) / 2 = 210

var float dkx_sum = 0.0
var float dkx_weights_sum = 0.0

dkx_sum := 0.0
dkx_weights_sum := 0.0

for i = 0 to DKX_period - 1
weight = DKX_period - i
dkx_sum += mid * weight
dkx_weights_sum += weight

dkx = dkx_sum / dkx_weights_sum

// --- 3. 计算 MADKX (DKX的简单移动平均) ---
madkx = ta.sma(dkx, MADKX_period)

// --- 4. 绘图 ---
plot(dkx, "DKX", color.red, linewidth=2)
plot(madkx, "MADKX", color.yellow, linewidth=2)

Отказ от ответственности

Информация и публикации не предназначены для предоставления и не являются финансовыми, инвестиционными, торговыми или другими видами советов или рекомендаций, предоставленных или одобренных TradingView. Подробнее читайте в Условиях использования.