ml_portfolio Signal diversification & redundancy audit

204
Turns “I have 180 indicators” into “which of them actually add anything.” Convert each signal to its own return STREAM, correlate the streams, and grade how redundant vs complementary a set is — so you weight the diversifiers and prune the duplicates.

Design (host-fed): pairwise correlation needs two full series with history, so the host computes each pair’s rollingCorr and collects them into an array; this library standardizes the return-stream construction, the pair test, and the set-level diversification grade. Pure functions of what you pass; nothing repaints.

Concept credit: return-stream correlation and diversification grading are standard portfolio-construction ideas — original, dependency-free Pine v6 packaging. Educational; not financial advice.

Library "ml_portfolio"

signalReturn(longSig, shortSig, ret)
  Parameters:
    longSig (bool)
    shortSig (bool)
    ret (float)

rollingCorr(a, b, len)
  Parameters:
    a (float)
    b (float)
    len (simple int)

redundantPair(a, b, len, thr)
  Parameters:
    a (float)
    b (float)
    len (simple int)
    thr (simple float)

avgAbsCorr(corrs)
  Parameters:
    corrs (array<float>)

diversificationScore(corrs)
  Parameters:
    corrs (array<float>)

Thông báo miễn trừ trách nhiệm

Thông tin và các ấn phẩm này không nhằm mục đích, và không cấu thành, lời khuyên hoặc khuyến nghị về tài chính, đầu tư, giao dịch hay các loại khác do TradingView cung cấp hoặc xác nhận. Đọc thêm tại Điều khoản Sử dụng.