【実装】MyMomRsi
- 勝利の売買システム (ウィザードブックシリーズ 113)/ジョン・R・ヒル
- ¥8,190
- Amazon.co.jp
上記書籍のEasyLanguageコードをYesLanguageに変換してみました。
----------------------------------------------------
Input : momLength(14), rsiLength(14);
If Momentum(momLength) > 100 and
CrossDown(RSI(rsiLength), 60) Then {
Buy("新規買", AtLimit, Lowest(Low, 3));
}
If Momentum(momLength) < 100 and
CrossUp(RSI(rsiLength), 40) Then {
Sell("新規売", AtLimit, Highest(High, 3));
}
----------------------------------------------------
詳細は書籍で確認してください。
DVD 岩本祐介さん②
- DVD 世界トップの技術 勝利の売買システムの実践と検証セミナー/岩本祐介
- ¥46,882
- Amazon.co.jp
第2部ではスーパーコンボというシステムの
日経225への適用方法について解説されています。
スーパーコンボについては
- 勝利の売買システム (ウィザードブックシリーズ 113)/ジョン・R・ヒル
- ¥8,190
- Amazon.co.jp
【実装】MyAdxSys
- 勝利の売買システム (ウィザードブックシリーズ 113)/ジョン・R・ヒル
- ¥8,190
- Amazon.co.jp
上記書籍のEasyLanguageコードをYesLanguageに変換してみました。
----------------------------------------------------
Input : adxLength(14), mavLength1(9), mavLength2(19);
Var : adxVal(0);
adxval = ADX(adxLength);
If adxval >= 15 Then {
If CrossUp(Average(Close, mavLength1), Average(Close, mavLength2)) Then {
Buy("新規買", AtStop, High[0]);
}
If CrossDown(Average(Close, mavLength1), Average(Close, mavLength2)) Then {
Sell("新規売", AtStop, Low[0]);
}
}
If adxval < 15 Then {
If MarketPosition == 1 Then {
ExitLong("買決済", AtStop, Lowest(Low, 4));
}
If MarketPosition == -1 Then {
ExitShort("売決済", AtStop, Highest(High, 4));
}
}
----------------------------------------------------
詳細は書籍で確認してください。
【実装】Dynamic Break Out Ⅱ
- 勝利の売買システム (ウィザードブックシリーズ 113)/ジョン・R・ヒル
- ¥8,190
- Amazon.co.jp
上記書籍のEasyLanguageコードをYesLanguageに変換してみました。
----------------------------------------------------
Input : ceilingAmt(60), floorAmt(20), bolBandTrig(2.00);
Var : lookBackDays(20), todayVolatility(0),
yesterDayVolatility(0), deltaVolatility(0);
Var : buyPoint(0), sellPoint(0), longLiqPoint(0),
shortLiqPoint(0), upBand(0), dnBand(0);
todayVolatility = STD(Close, 30);
yesterDayVolatility = STD(Close[1], 30);
deltaVolatility = (todayVolatility - yesterDayVolatility) / todayVolatility;
lookBackDays = lookBackDays * (1 + deltaVolatility);
lookBackDays = Round(lookBackDays, 0);
lookBackDays = MinList(lookBackDays, ceilingAmt);
lookBackDays = MaxList(lookBackDays, floorAmt);
upBand = BollBandUp(lookBackDays, bolBandTrig);
dnBand = BollBandUp(lookBackDays, bolBandTrig);
buyPoint = Highest(High, lookBackDays);
sellPoint = Lowest(Low, lookBackDays);
longLiqPoint = Average(Close, lookBackDays);
shortLiqPoint = Average(Close, lookBackDays);
If Close[0] > upBand Then {
Buy("新規買", AtStop, buyPoint);
}
If Close[0] < upBand Then {
Sell("新規売", AtStop, sellPoint);
}
If MarketPosition == 1 Then {
ExitLong("買決済", AtStop, longLiqPoint);
}
If MarketPosition == -1 Then {
ExitShort("売決済", AtStop, shortLiqPoint);
}
----------------------------------------------------
詳細は書籍で確認してください。
DVD 岩本祐介さん①
- DVD 世界トップの技術 勝利の売買システムの実践と検証セミナー/岩本祐介
- ¥46,882
- Amazon.co.jp
高額の商品ですが、それなりの内容は伴っていると思います。
第1部ではオープンレンジブレイクアウトについての解説です。
寄り付き価格に加えるレンジについていろいろな手法を紹介しています。
内容的には
- システムデイトレード (よくわかる!シリーズ番外編)/マレー・ルジェーロ
- ¥4,788
- Amazon.co.jp
のアイデアが中心になっています。
【実装】HV&トビー・クラベル
http://ameblo.jp/traderssystem/entry-10117447155.html
--------------------------------------------------------
Input : entryPoint(10), shortHV(6), longHV(100), prcntHV(0.5);
//本日、6日間ヒストリカルボラティリティ/100日間HV<=50%
//本日、ID/NR4(はらみ足&値幅最小)である
if HV(shortHV) / HV(longHV) < prcntHV and
Low[0] > Low[1] and High[0] < High[1] and
Range[0] < Range[1] and Range[0] < Range[2] and
Range[0] < Range[3] Then {
//本日高値の1ティック上に逆指し買い
If MarketPosition <> 1 Then {
Buy("SW3901新規買", AtStop, High + entryPoint);
}
//本日安値の1ティック下に逆指し売り
If MarketPosition <> -1 Then {
Sell("SW3901新規売", AtStop, Low - entryPoint);
}
}
--------------------------------------------------------
値幅収縮のアイデアにHV()関数の条件が加わっています。
--------------------------------------------------------
Input : period(Numeric);
HV = STD(Close, period) * 16 / 100;
--------------------------------------------------------
HV()関数のソースです。
指定した期間の終値の標準偏差×16÷100
を算出しています。
16というのは√256(1年間の大まかな営業日数)の解でしたっけ。
【実装】値幅収縮
http://ameblo.jp/traderssystem/entry-10117446536.html
-----------------------------------------------
Input : entryPoint(10), KeepDay(2);
//本日、ID/NR4を確認
//ID=はらみ足
//NR4=4日間で最も値幅が狭い
if Low[0] > Low[1] and High[0] < High[1] and
Range[0] < Range[1] and Range[0] < Range[2] and
Range[0] < Range[3] Then {
//本日高値の1ティック上に逆指し買い
If MarketPosition <> 1 Then {
Buy("SW4001新規買", AtStop, High + entryPoint);
}
//本日安値の1ティック下に逆指し売り
If MarketPosition <> -1 Then {
Sell("SW4001新規売", AtStop, Low - entryPoint);
}
}
//2日後には決済
If BarsSinceEntry(0) == KeepDay then {
if MarketPosition == 1 then {
ExitLong("SW4001買決済-期限", OnClose);
}
if MarketPosition == -1 then {
ExitShort("SW4001売決済-期限", OnClose);
}
}
-----------------------------------------------
はらみ足の実装については以前も紹介したと思います。
NR4は4日間で最も値幅が狭いということなので、
本日のRangeが前日、2日前、3日前よりも小さいと実装しています。
【実装】3営業日以内に窓を埋める反転
http://ameblo.jp/traderssystem/entry-10117445371.html
---------------------------------------------------------------
Input : entryPoint(10), profitPrice(50);
//本日、下に窓を開けて、窓を埋めない
If MarketPosition == 0 and
High[0] < Low[1] Then {
Value1 = 1;
Value2 = High[0];
Value3 = Low[0];
Value4 = Low[1];
}
//次の3営業日にわたって、下に窓を開けた日の高値の1ティック上に逆指し買い
If MarketPosition == 0 Then {
If Value1 >= 1 and Value1 <= 3 Then {
Buy("SW4101新規買", AtStop, Value2 + entryPoint);
Value1 = Value1 + 1;
} Else {
Value1 = 0;
}
} Else {
Value1 = 0;
}
//窓が埋められたら、下に窓を開けた日の安値で損切り
If MarketPosition == 1 and High[0] >= Value4 Then {
ExitLong("SW4101買決済", AtStop, Value3);
}
SetStopProfittarget(profitPrice, PointStop);
---------------------------------------------------------------
「下に窓を開けて、窓を埋めない」というアイデアを
本日高値<前日安値と実装しています。
変数Value1を用いて3営業日という期間を制御しています。
窓を開けた日の高値、安値を取引に用いているため、
窓の条件のIF文内で変数に値をセットしていますが、
Value1を用いてHigh[Value1 - 1]などとしても同様の処理が実現できます。
【実装】鞭打ち
http://ameblo.jp/traderssystem/entry-10117444900.html
------------------------------------------
Input : rangeRate(0.5), profitPrice(50);
If High[0] < Low[1] and
Close[0] > Open[0] and
Close[0] > Open[0] + Range() * rangeRate Then {
Buy("SW4201新規買", OnClose);
}
If Low[0] > High[1] and
Close[0] < Open[0] and
Close[0] < Open[0] + Range() * rangeRate Then {
Sell("SW4201新規売", OnClose);
}
If MarketPosition == 1 and Open[0] < Close[1] Then {
ExitLong("SW4201買決済", OnClose);
}
If MarketPosition == -1 and Open[0] > Close[1] Then {
ExitShort("SW4201売決済", OnClose);
}
SetStopProfittarget(profitPrice, PointStop);
------------------------------------------