シェア:

アーン・トレンド戦略:ビットコインの値動きの波に乗ろう!中学生にもわかる解説

この作戦は、ビットコインというデジタルなお金が、短い時間でどう動くかを調べる方法です。「5分足チャート」という5分ごとの値動きグラフを使って、値段が上がる勢いや下がる勢いを見つけ、いつ買ったり売ったりすればいいのかタイミングを探ります。専門用語はなるべく使わずに、わかりやすく説明しますね。昔のデータで試してみた結果も一緒に見てみましょう。

取引数
238
勝率
39.08%
最終リターン
-36.77%
最大DD
41.37%

導入と前提条件

この作戦は、ビットコインというデジタルなお金が、短い時間でどう動くかを調べる方法です。「5分足チャート」という5分ごとの値動きグラフを使って、値段が上がる勢いや下がる勢いを見つけ、いつ買ったり売ったりすればいいのかタイミングを探ります。専門用語はなるべく使わずに、わかりやすく説明しますね。昔のデータで試してみた結果も一緒に見てみましょう。

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

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

Aroon Trend の理論的背景

この作戦の基本的な考え方は、「トレンドの波に乗ること」です。ものの値段には、一方向にどんどん動く「トレンド」と、あまり動かない「レンジ(横ばい)」という状態があります。「アーン・インジケーター」は、過去25回分の値動きの中で、一番高かった値段がいつだったか、一番安かった値段がいつだったかを調べます。もし、最近に一番高い値段がついていたら「上がる勢いが強いぞ」と考えます。逆に、最近に一番安い値段がついていたら「下がる勢いが強いぞ」と判断するんです。この2つの勢いの強さの違いが、トレンドの強さを教えてくれます。

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

エントリー条件

  • 「上がる勢い」が基準の70より強くて、「下がる勢い」が70より弱いとき。さらに、全体として上がる勢いの方が強いときに買います。
  • さっきまでは違ったけど、今まさに「上がる勢い」が「下がる勢い」を上回った瞬間に買います。これは、上がり始めるサインかもしれません。
  • 「下がる勢い」が基準の70より強くて、「上がる勢い」が70より弱いとき。さらに、全体として下がる勢いの方が強いときに売ります。
  • さっきまでは違ったけど、今まさに「下がる勢い」が「上がる勢い」を上回った瞬間に売ります。これは、下がり始めるサインかもしれません。

エグジット条件

  • 買っていた場合:値段が下がり始めたサインが出たら、取引をやめます。
  • 売っていた場合:値段が上がり始めたサインが出たら、取引をやめます。
  • 「こう動くはず」という予想と反対に動いてしまったら、取引をやめます。
  • ある程度の利益が出たときや、「これ以上損したらまずい」と決めていたラインを超えたときにも、取引をやめます(これを「損切り」と言います)。

リスク管理

取引を始める前に、「最悪、この金額までなら損しても大丈夫」というラインを決めます。もし値段が予想と反対に動いてしまったら、そのラインでスパッと取引をやめて、大きな損を防ぎます。また、一度にたくさんのお金を使わず、持っているお金の一部だけを使って、安全に取引することが大切です。

再現手順(HowTo)

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

【結果】パフォーマンス

価格の推移

価格推移

資産の推移

資産推移

パフォーマンス指標

指標
総トレード数238回
勝率39.08%
平均利益1.34%
平均損失-1.15%
期待値-0.18%
プロフィットファクター0.72
最大ドローダウン41.37%
最終リターン-36.77%
シャープレシオ-0.06
HODL(Buy&Hold)90.17%

HODL戦略との比較

HODL戦略との比較

実装コード(Python)

strategy.py
#!/usr/bin/env python3
"""
Aroonインジケーター戦略
トレンドの強さと方向を測定
"""
import pandas as pd
import numpy as np


def calculate_aroon_signals(df: pd.DataFrame, aroon_period: int = 25, 
                           threshold: float = 70) -> pd.DataFrame:
    """
    Aroonトレンドシグナルを生成
    
    Parameters:
    -----------
    df : pd.DataFrame
        OHLCVデータ
    aroon_period : int
        Aroon計算期間(デフォルト: 25)
    threshold : float
        トレンド判定閾値(デフォルト: 70)
    
    Returns:
    --------
    pd.DataFrame
        シグナル列が追加されたDataFrame
    """
    df = df.copy()
    
    # Aroon Up計算(最高値からの期間)
    df['aroon_up'] = df['high'].rolling(window=aroon_period + 1).apply(
        lambda x: (aroon_period - x.argmax()) / aroon_period * 100
    )
    
    # Aroon Down計算(最安値からの期間)
    df['aroon_down'] = df['low'].rolling(window=aroon_period + 1).apply(
        lambda x: (aroon_period - x.argmin()) / aroon_period * 100
    )
    
    # Aroon Oscillator
    df['aroon_oscillator'] = df['aroon_up'] - df['aroon_down']
    
    # シグナル生成
    # 強い上昇トレンドの開始
    df['is_buy'] = (
        (df['aroon_up'] > threshold) &  # Aroon Upが高い
        (df['aroon_down'] < 100 - threshold) &  # Aroon Downが低い
        (df['aroon_oscillator'] > 0) &  # オシレーターが正
        (df['aroon_oscillator'].shift(1) <= 0)  # 前期間は負または0
    )
    
    # 強い下降トレンドの開始
    df['is_sell'] = (
        (df['aroon_down'] > threshold) &  # Aroon Downが高い
        (df['aroon_up'] < 100 - threshold) &  # Aroon Upが低い
        (df['aroon_oscillator'] < 0) &  # オシレーターが負
        (df['aroon_oscillator'].shift(1) >= 0)  # 前期間は正または0
    )
    
    # NaN値をFalseに置換
    df['is_buy'] = df['is_buy'].fillna(False)
    df['is_sell'] = df['is_sell'].fillna(False)
    
    print(f"Aroonトレンド: 期間={aroon_period}, 閾値={threshold}")
    print(f"買いシグナル数: {df['is_buy'].sum()}")
    print(f"売りシグナル数: {df['is_sell'].sum()}")
    
    return df

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

  1. 1この作戦を、過去約1年間のビットコインのデータで試してみました。結果、勝てたのは約10回中4回(勝率39.08%)でした。勝率はそれほど高くないですね。
  2. 2でも、残念ながら、最終的には持っていたお金が36.77%減ってしまうという結果でした。これは、勝ったときにもらったお金より、負けたときに失ったお金の方が多かったということです。
  3. 3一番大きく負けたときには、お金が41.37%も減ってしまいました。これは、かなり大きな損をする危険があることを示しています。何もしないでずっとビットコインを持っていた方が、良い結果だったようです。

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

  1. 1「アーン・インジケーター」は、値動きの方向を知るのに便利な道具ですが、これさえ使えば必ず勝てる、というわけではないことがわかりました。
  2. 2勝つ回数が少なくても、一回で大きく勝てれば全体でプラスになります。でも、今回の作戦では、残念ながら負けたときの損の方が大きくなってしまいました。
  3. 3昔のデータでうまくいかなくても、がっかりするだけではダメです。なぜうまくいかなかったのかを考えて、作戦を良くしていくことが大切だということを学びました。

リスク管理の具体的手法

取引量の決め方

1回の取引で使うお金は、自分が持っているお金全部の、ほんの少し(例えば100分の1とか)だけにするのがおすすめです。こうすれば、もし負けても、大けがをしないで済みます。

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

もし取引の途中で損がふくらんで、決めておいたライン(例えば5%の損)を超えたら、そこで取引をストップします。こうすることで、損がどんどん大きくなるのを防げます。

資金管理の方法

取引で勝って増えたお金は、全部を次の取引に使わずに、一部は貯金するなど計画的に使いましょう。もし負けてしまっても、あわてずに、無理のない範囲で取引を続けることが大切です。

改良案の具体的提案

  • 「アーン・インジケーター」で使っている数字(例えば、過去25回分を見る、基準を70にするなど)を変えてみると、もっと良い結果になるかもしれません。
  • この作戦に、他の分析方法(例えば「移動平均線」など)をプラスすると、もっと確かな「買い」や「売り」のサインが見つかるかもしれません。
  • 「このくらい損したらやめる」という損切りのルールや、「このくらい利益が出たらやめる」という利益確定のルールをもっとうまく作れば、損を減らして利益を増やせるかもしれません。

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

  • 今回は5分ごとの短い時間の動きを見ましたが、実際には1時間ごとや4時間ごとのような、もっと長い時間の大きな流れも一緒に見ると、もっとうまくいくかもしれません。
  • 昔のデータでうまくいったからといって、未来も同じようにうまくいくとは限りません。これはとても大事なことなので覚えておいてください。実際に取引するときは、まず少ないお金で試してみるなど、慎重に始めましょう。
  • 取引が終わったら、ノートに記録をつけて「なぜ勝てたのか」「なぜ負けたのか」を振り返ることが、上手になるためのヒントになります。この実験結果も、作戦を良くするための材料にしましょう。

検証の透明性と信頼性

  • データの出所: どのデータを使ったか:教えてもらったデータを使いました。
  • 検証のやり方: どうやって試したか:教えてもらったやり方で、ビットコインの過去のデータ(2024年8月30日〜2025年8月25日)を使って、この作戦がうまくいったかを確かめました。
  • コード: 作戦のプログラム:この作戦をコンピューターで動かすためのプログラムは、見られるようになっています。
  • 注意事項: 注意してほしいこと:この記事は「こんな作戦はどうですか?」と紹介するもので、投資をおすすめするものではありません。取引には損をする危険があります。最終的にどうするかは、必ず自分で考えて決めてくださいね。

よくある質問

Q.「アーン・インジケーター」って何のこと?

A.値段が「上がる勢い」と「下がる勢い」を測る道具のことだよ。数字が大きいほど、その方向への勢いが強いことを示しているんだ。

Q.「しきい値」ってどういう意味?

A.「ここを超えたら」というような、判断の基準になる数字のことだよ。この作戦では、70という数字が基準になっているんだ。

Q.「PF(プロフィットファクター)」って何がわかるの?

A.「利益の合計」を「損失の合計」で割った数字のことだよ。もし1より大きかったら、全体でプラスになっているということ。今回は0.72だから、残念ながら損の方が大きかったってことだね。

Q.「最大DD(ドローダウン)」って、そんなに悪いの?

A.一番運が悪かったときに、お金がどれくらい減ってしまったか、という割合のことだよ。41.37%というのは、例えば100万円あったお金が、一時的に60万円くらいまで減ってしまった可能性がある、ということ。かなり大きな損をする危険があることを示しているよ。

Q.この作戦で、どうやったら勝てるようになるかな?

A.使う数字の設定を変えてみたり、他の分析道具と組み合わせたりすることが考えられるよ。あとは、「ここまで損したらやめる」という損切りのルールをしっかり守ることが、とても大切だよ。

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

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

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

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

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

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

Q.HODLとの比較結果は?

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

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

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

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

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

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

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

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

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

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

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

Q.改良の方向性は?

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

著者情報