この戦略は,ランダムな指標のK線とD線の交差を利用して取引信号を生成し,典型的なランダムな指標の取引戦略に属している.
一定周期内のランダムな指標K線とD線を計算する.
K線が下からD線を突破すると,買取信号が生成される.
K線がD線を上から下から突破すると,出売信号が生成される.
戦略の効果をテストするために,反射の時間帯を設定できます.
ランダムな指標の交差で取引し,戦略はシンプルで明確である.
ランダムな指標は,過剰買いと過剰売りに敏感である.
K線とD線は取引信号を形成しやすい.
戦略の効果を裏付けるための反省テスト.
ランダムな指標は計算しやすい.
簡単なコードで二次開発が容易です.
ランダムな指数交差は偽信号を発生させる可能性があります.
ストップダストは設定されていません.
傾向と整合の区別がつかない.
データの適合偏差が検出されました.
リアルタイムで実施した結果には違いがあるかもしれない.
異なるパラメータをテストし,最適なパラメータを探します.
傾向判断指標のフィルタリングを増やす.
損害防止の仕組みを確立する
信号の検証のために他の要素を導入する.
測定データを処理して偏差を排除する.
パラメータ配置を最適化するために実ディスクを模擬する.
この戦略は,簡単なランダムな指標の交差で取引し,容易に実現しますが,安定性を高めるためにさらに最適化する必要があります.パラメータ調整,リスク管理などの方法で強化され,信頼性の高い定量取引戦略に構築することができます.
/*backtest
start: 2023-08-20 00:00:00
end: 2023-09-19 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © utanico
//@version=4
strategy(title="Stochastic", overlay=true, shorttitle="Stoch")
periodK = input(35, title="K", minval=1)
periodD = input(21, title="D", minval=1)
smoothK = input(21, title="Smooth", minval=1)
startYear = input(type=input.integer, title = "開始年", defval = 2020)
startMonth = input(type=input.integer, title = "開始月", defval = 1)
startDay = input(type=input.integer, title = "開始日", defval = 1)
endYear = input(type=input.integer, title = "終了年", defval = 2030)
endMonth = input(type=input.integer, title = "終了月", defval = 12)
endDay = input(type=input.integer, title = "終了日", defval = 31)
//開始日時
test_start = timestamp(startYear, startMonth, startDay, 00, 00)
//終了日時
test_end = timestamp(endYear, endMonth, endDay, 00, 00)
//テスト期間の指定
is_test = true
k = sma(stoch(close, high, low, periodK), smoothK)
d = sma(k, periodD)
if (is_test)
if (k > d)
strategy.entry("Stoch_LE", strategy.long, comment="Stoch_LE")
//if (strategy.opentrades > 0 and k < d)
//strategy.close("Stoch_LE",comment="CloseLONG")
if (k < d)
strategy.entry("Stoch_SE", strategy.short, comment="Stoch_SE")
//if (strategy.opentrades < 0 and k > d)
//strategy.close("Stoch_SE",comment="CloseShort")