シェア:

値段の勢いに乗ってみよう!『ATRブレイクアウト』作戦でコインの取引に挑戦!

この作戦は、コイン(XRP/USDT)の値段がグンと動く力を利用して、買ったり売ったりするタイミングを見つける方法です。5分ごとという短い時間で値段の動きを見て、もうけを出すことを目指します。もし1年間この作戦を続けたらどうなったか、わかりやすく説明しますね!

取引数
5863
勝率
18.35%
最終リターン
-100.00%
最大DD
100.00%

導入と前提条件

この作戦は、コイン(XRP/USDT)の値段がグンと動く力を利用して、買ったり売ったりするタイミングを見つける方法です。5分ごとという短い時間で値段の動きを見て、もうけを出すことを目指します。もし1年間この作戦を続けたらどうなったか、わかりやすく説明しますね!

【検証】戦略のバックテスト概要

  • 戦略名: ATR Breakout を使用したトレンド追従戦略
  • 対象銘柄: XRP/USDT
  • 時間足: 5m
  • 期間: 2024-07-25〜2025-08-25(395日間)
  • 初期資金: $10,000
  • 手数料・スリッページ: 0.1% / 0.1%
  • 取引所: binance

ATR Breakout の理論的背景

この作戦のもとになっているのは、『値段は一度動き出すと、しばらくそっちの方向に進みやすい』という考え方です。特に、値段が激しく動きやすいコインの世界では、そういうことがよくあります。ATRというのは、その『値段の動きの大きさ』をはかる道具のことです。このATRを基準にして、今の値段が『いつもより大きく動いたぞ!』と判断できたら、新しい流れが始まったサインかもしれません。そこで、その流れに乗っかってみるのが、この作戦なんです。

具体的な売買ルール(今回の検証)

エントリー条件

  • 前の日の終わりの値段より、値段が『いつもよりちょっと大きめに』上がったとき(買う合図)

エグジット条件

  • もうけが出ているときに、それを自分のものにするとき(今回は、はっきりしたルールはありませんでした)
  • 損が出ているときに、これ以上損が大きくならないように取引をやめるとき(これも、はっきりしたルールはありませんでした)

リスク管理

この作戦を試した結果、最大で100%の損、つまり最初のお金がぜんぶなくなってしまうという結果になりました。これは、大きな失敗を防ぐためのルールが、うまくできていなかったということです。本当は、1回の取引で損してもいい金額を決めておくとか、損がある金額を超えたら取引をやめる、といったルールが必要です。

再現手順(HowTo)

  1. Python/依存(ccxt, pandas, ta)をインストール
  2. ccxtでXRP/USDTのOHLCVを取得して前処理
  3. 『ATR Breakout』に必要な指標を算出(ta 等)
  4. 閾値・クロス条件から売買シグナルを生成
  5. 手数料・スリッページを加味して検証・評価

【結果】パフォーマンス

価格の推移

価格推移

資産の推移

資産推移

パフォーマンス指標

指標
総トレード数5863回
勝率18.35%
平均利益0.96%
平均損失-0.66%
期待値-0.37%
プロフィットファクター0.29
最大ドローダウン100%
最終リターン-100%
シャープレシオ-1.29
HODL(Buy&Hold)395.74%

HODL戦略との比較

HODL戦略との比較

実装コード(Python)

strategy.py
"""
ATR Breakout Signal
前日終値からのk*ATRブレイクで判定するのだ。
"""
import pandas as pd


def _tr(df: pd.DataFrame) -> pd.Series:
    prev_close = df['close'].shift(1)
    tr = (df['high'] - df['low']).abs()
    tr2 = (df['high'] - prev_close).abs()
    tr3 = (df['low'] - prev_close).abs()
    return pd.concat([tr, tr2, tr3], axis=1).max(axis=1)


def calculate_atr_breakout_signals(df: pd.DataFrame, atr_period: int = 14, k: float = 1.5) -> pd.DataFrame:
    out = df.copy()
    atr = _tr(out).rolling(atr_period).mean()
    prev_close = out['close'].shift(1)
    out['is_buy'] = out['close'] > (prev_close + k * atr)
    out['is_sell'] = out['close'] < (prev_close - k * atr)
    return out

なぜこの結果になったのか(3つの理由)

  1. 1勝てた確率が約18%と、とっても低かったので、ほとんどの取引で損をしてしまいました。
  2. 21回取引するごとに、平均して損をしてしまう計算になりました。儲かったお金と損したお金を比べても、損の方がずっと大きかったです。
  3. 3最終的に、もうけがマイナス100%になった、というのは、取引を続けた結果、お金がぜんぶなくなってしまった、ということです。

この結果から学べる3つの教訓

  1. 1勝つ回数が少なくても、1回で大きく勝てればプラスになる作戦もありますが、このやり方ではそれができませんでした。
  2. 2成績表を見ると、この作戦はこのままではうまくいかないことがわかります。何かを変える必要があります。
  3. 3どんな作戦でも、損をしないためのルール(リスク管理)はすごく大事です。それができていないと、大きな失敗につながってしまいます。

リスク管理の具体的手法

取引量の決め方

今回の計算では、損が大きくなりすぎました。これは、1回にどれくらいのお金で取引するかの決め方がよくなかった、ということです。本当は、自分の持っているお金のうち、1回の取引で失ってもいいのは〇%まで、というルールを決めて、それに合わせて取引する量を決める必要があります。

損失が大きくなったときの対処法

最大で100%損したということは、損がどんどんふくらむのを止められなかった、ということです。本当なら、損が持っているお金の10%くらいになったら、いったん取引をお休みするなど、損が広がるのを防ぐ仕組みが必要です。

資金管理の方法

資金管理とは、自分のお金をどう使うか計画することです。この作戦では、最終的にお金がゼロになってしまったので、資金管理がうまくできていませんでした。例えば、持っているお金を全部使わずに余裕をもたせたり、もうけが出たらその一部は別に取っておいたりする工夫が大切です。

改良案の具体的提案

  • 『今だ!』という合図が出てもすぐに飛びつかず、少し待って、本当に値段の勢いが続いているか確かめてから取引する。
  • 『ここまで損したらやめる』という損切りのルールをしっかり決めて、1回の取引で失うお金を少なくする。
  • 作戦で使う数字(設定)を変えてみたり、他の道具と組み合わせたりして、もっと正確な『今だ!』の合図を探す。

実用性の向上(運用上の注意)

  • この結果は、あくまで昔のデータで計算してみただけなので、これから先も同じ結果になるとは限りません。
  • もし本当に取引してみるなら、まずはお試し用の取引(デモトレード)で練習してみるのがおすすめです。
  • 世の中の状況はいつも変わるので、定期的に作戦の成績を見直して、必要ならやり方を変えていくことが大事です。

検証の透明性と信頼性

  • データの出所: 使ったデータは、用意された過去の取引データです。
  • 検証のやり方: 昔の値段のデータを使って、『もしこの作戦で取引していたらどうなったか』を計算(バックテスト)しました。
  • コード: この計算に使ったプログラムの設計図はあります。
  • 注意事項: この説明は、『これを買うと儲かるよ』とおすすめするものではありません。投資には損をする危険があり、最初のお金が戻ってくる保証はありません。最後は、自分で考えて決めてくださいね。

よくある質問

Q.ATRって何?

A.ATRは、ある期間の『値段の動きの大きさ』の平均のことです。値段がだいたいどれくらい上がったり下がったりしたかの平均、と考えてみてください。

Q.「k」って何のためにあるの?

A.「k」は、ATR(値段の動きの大きさ)に掛ける数字です。この数字を大きくすると、もっともっと大きく値段が動かないと『今だ!』の合図が出なくなります。逆に小さくすると、ちょっとした動きでも合図が出やすくなります。今回は0.8という数字を使いました。

Q.勝つ回数が少なくても勝てるって本当?

A.本当のこともあります。例えば、10回取引して、9回はちょこっと負けるけど、1回だけものすごく大きく勝てば、全部合わせるとプラスになります。でも、今回の作戦では、残念ながらそうなりませんでした。

Q.「最大DD100%」ってどういう意味?

A.最大DD(さいだいドローダウン)が100%というのは、一番うまくいかなかった時期に、最初持っていたお金が全部なくなってゼロ円になってしまった、という意味です。

Q.HODLって何?

A.HODL(ホドル)は、コインなどを売ったり買ったりせず、ずーっと『持ち続ける』作戦のことです。『ガチホ(ガチでホールドする)』とも言いますね。ちなみに今回の期間では、この作戦(HODL)でただ持っているだけの方が、ずっと良い結果になっていました。

Q.検証に使用した期間と時間足は?

A.5m足で検証しました。期間は記事内の概要をご確認ください。

Q.最終リターンと最大ドローダウンは?

A.最終リターンは-100.00%、最大DDは100.00%です。

Q.勝率やPFはどの程度?

A.勝率は18.35%、プロフィットファクターは0.29です。

Q.HODLとの比較結果は?

A.HODLは395.74%でした。記事内の比較表をご覧ください。

Q.手数料やスリッページは考慮済み?

A.はい。バックテスト設定の手数料・スリッページを損益に反映しています。

Q.市場環境はトレンド/レンジどちらに近かった?

A.期間中はトレンド優勢と推測されます。

Q.この戦略は初心者でも扱える?

A.基礎的な指標と検証環境の知識があれば扱えます。まずは少額・デモから。

Q.推奨のリスク管理は?

A.最大DDを踏まえた損切り・ポジションサイジングと、システム停止基準の設定を推奨します。

Q.将来の結果は期待できる?

A.過去の結果は将来を保証しません。市場環境やパラメータ適合性に大きく依存します。

Q.改良の方向性は?

A.トレンド・ボラティリティのフィルター併用、パラメータの再最適化、取引頻度の制御を検討してください。

著者情報