【実装】】%Fと移動平均の交差
http://ameblo.jp/traderssystem/entry-10104973420.html
----------------------------------------------------------
Input : F_Period(5), Ma_Period(3);
Var : PercentF(0);
//%F=100×(終値-終値の予測値)/終値
//EasyLanguageではLinearRegValue()関数を利用
PercentF = 100 * (Close[0] * LRL(Close, F_Period)) / Close;
//PercentF = 100 * (Close[0] * LRS(Close, F_Period)) / Close;
//本日5日%Fが3日単純移動平均を上抜くとき
If CrossUp(PercentF, Ma(PercentF, Ma_Period)) Then {
//翌日の寄り付きで買い
Buy("SW3001新規買", AtMarket);
}
//本日5日%Fが3日単純移動平均を下抜くとき
If CrossDown(PercentF, Ma(PercentF, Ma_Period)) Then {
//翌日の寄り付きで売り
Sell("SW3001新規売", AtMarket);
}
----------------------------------------------------------
LRL()関数が難しいですね。
終値の予測値というアイデアからこれを実装できれば
かなりの実力を持っているといえるのではないでしょうか?
(私はEasy Languageのソースコードを流用しました)
----------------------------------------------------------
/* LRS : (L)inear (R)egression (L)ine
*
* Provided By : YesStock Inc. (c) Copyright 2006
* E-Mail : webmaster@yesstock.com
*/
Input : Value(NumericSeries), Period(NumericSimple);
Var : value1(0), value2(0), AccumValue(0);
AccumValue = accum(1);
value1 = ma(AccumValue, Period);
value2 = ma(Value, Period);
LRL = (ma(Value * AccumValue, Period) - value1 * value2) /
(ma(AccumValue^2, Period) - (ma(AccumValue, Period)^2)) * (AccumValue - value1) + value2;
----------------------------------------------------------
LRL()関数です。
YesStock社、コメント間違えてますね。
----------------------------------------------------------
/* LRS : (L)inear (R)egression (S)lope
*
* Provided By : YesStock Inc. (c) Copyright 2006
* E-Mail : webmaster@yesstock.com
*/
Input : Price(NumericSeries), Len(NumericSimple);
Var : X(0), Num1(0), Num2(0), SumBars(0), SumSqrBars(0), SumY(0), Sum1(0), Sum2(0);
If Len == 0 Then
LRS = 0;
SumBars = Len * (Len - 1) * .5;
SumSqrBars = (Len - 1) * Len * (2 * Len - 1) / 6;
Sum1 = 0;
For X = 0 To Len - 1 Begin
Sum1= Sum1 + X * Price[X];
End;
SumY = AccumN(Price, Len);
Sum2 = SumBars * SumY;
Num1 = Len * Sum1 - Sum2;
Num2 = SumBars * SumBars - Len * SumSqrBars;
If Num2 != 0 Then
LRS = Num1 / Num2;
Else
LRS = 0;
----------------------------------------------------------
LRS()関数です。
そのうち解読していきたいと思いますが、
参考になるサイトがあれば教えてほしいです。。。