<?xml version="1.0" encoding="shift_jis"?>
<tactico-extension id="regression" version="1.0">
  <staticChart id="d2" description="回帰曲線つき日足チャート" chartsession="daily" >
    <indicator name="tactico.移動平均線" args="25"/>
    <indicator name="regression_avg" args="$len"/>
    <parameter id="len" initial="25"/>
  </staticChart>
  
  <indicatorDef id="regression_avg" location="chart">
    <parameters>int len</parameters>
    <defaultArgs>25</defaultArgs>
    <parameterDescription>$unit数 $len</parameterDescription>
    <label>$len$unit回帰曲線</label>
    <appearance>khaki</appearance>
    <element><expression>
      let((a = series(1, 1+len).map(lambda ((int x) x - (1+len)*0.5)),
           m = close(len).avg(),
           q = close(len).map(lambda ((double x) x - m)),
           b = sum(a * q) / sum(a * a))
         avg(close(len)) + b * (1+len) / 2)
    </expression></element>
  </indicatorDef>
</tactico-extension>
