シェア:

ある道具で未来の値段を予測?仮想通貨の取引に挑戦!

「BNB」っていう仮想通貨を、4時間ごとの値段の動きを見ながら取引してみました。今回は「パーセントB」という道具を使いましたが、結果はどうだったでしょう?うまくいったのか、それとも失敗だったのか、みんなにも分かりやすく説明しますね!

取引数
82
勝率
19.51%
最終リターン
-21.08%
最大DD
37.36%

導入と前提条件

「BNB」っていう仮想通貨を、4時間ごとの値段の動きを見ながら取引してみました。今回は「パーセントB」という道具を使いましたが、結果はどうだったでしょう?うまくいったのか、それとも失敗だったのか、みんなにも分かりやすく説明しますね!

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

  • 戦略名: Percent B を使用したトレンド追従戦略
  • 対象銘柄: BNB/USDT
  • 時間足: 4h
  • 期間: 2025-01-26〜2025-08-25(210日間)
  • 初期資金: $10,000
  • 手数料・スリッページ: 0.1% / 0.1%
  • 取引所: kucoin

Percent B の理論的背景

「パーセントB」は、今の値段が、よく動く範囲を示す「上の線」と「下の線」の間のどのあたりにいるかを示します。下の線に近ければ「安いかも」、上の線に近ければ「高いかも」というサインです。この作戦では、真ん中あたりに引いた「基準の線」を値段が超えたら、売り買いのチャンス!と考えます。例えば、下から上に基準の線を超えたら「買い」、上から下に超えたら「売り」というシンプルなルールです。

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

エントリー条件

  • 値段が「安い」ほうから「基準の線」を上に超えたら、買うチャンスです。
  • 値段が「高い」ほうから「基準の線」を下に超えたら、売るチャンスです。

エグジット条件

  • 買った後、値段が「すごく高い」エリアに入ったら、売って取引を終わらせます。
  • 売った後、値段が「すごく安い」エリアに入ったら、買い戻して取引を終わらせます。

リスク管理

もしものために、損をできるだけ小さくする工夫もしました。持っているお金が、一時的にでも3分の1以上も減ってしまうようなことがあったら、一度お休みするルールです。また、一度に大きなお金を動かさないように、取引する量も調整しました。

再現手順(HowTo)

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

【結果】パフォーマンス

価格の推移

価格推移

資産の推移

資産推移

パフォーマンス指標

指標
総トレード数82回
勝率19.51%
平均利益3.86%
平均損失-1.26%
期待値-0.26%
プロフィットファクター0.72
最大ドローダウン37.36%
最終リターン-21.08%
シャープレシオ-0.36
HODL(Buy&Hold)27.54%

HODL戦略との比較

HODL戦略との比較

実装コード(Python)

strategy.py
"""
Percent B Signal
Bollinger Bands の %B で判定するのだ。
"""
import pandas as pd


def calculate_percent_b_signals(df: pd.DataFrame, period: int = 20, num_std: float = 2.0, threshold: float = 0.5) -> pd.DataFrame:
    out = df.copy()
    m = out['close'].rolling(period).mean()
    sd = out['close'].rolling(period).std()
    upper = m + num_std * sd
    lower = m - num_std * sd
    pb = (out['close'] - lower) / (upper - lower)
    out['percent_b'] = pb
    prev = pb.shift(1)
    out['is_buy'] = (pb > threshold) & (prev <= threshold)
    out['is_sell'] = (pb < (1 - threshold)) & (prev >= (1 - threshold))
    return out

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

  1. 1「パーセントB」という道具が、値段の勢いをうまく読み取れなかったみたいで、勝てる回数がとても少なくなってしまいました。
  2. 2売り買いのタイミングを決める「基準の線」の場所が、そのときの仮想通貨の動きと合っていなかったのかもしれません。
  3. 3もしかしたら、この作戦が苦手とするような、特別な値動きをしていた時期だったのかもしれません。

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

  1. 1「これならいける!」と思った作戦でも、全部勝つのは難しいんだな、ということが分かりました。
  2. 2「パーセントB」みたいな便利な道具も、使い方や設定を工夫しないと、うまくいかないことがあると学びました。
  3. 3その時々の値段の動きに合わせて、作戦をうまく変えていくことが大事なんだな、と感じました。

リスク管理の具体的手法

取引量の決め方

1回の取引で、もし負けても大丈夫な金額をあらかじめ決めておきます。そして、その金額を超えないように、買う量や売る量を調整します。

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

もし、思ったよりもたくさん負けてしまって、持っているお金が大きく減ってきたら、いったん全部の取引をお休みして、被害が広がるのを防ぎます。

資金管理の方法

持っているお金全部を取引に使うのではなく、「取引に使うお金」と「使わないお金」をしっかり分けます。そして、一回の取引で失ってもいい金額も決めて、ルールを守ります。

改良案の具体的提案

  • 売り買いのタイミングを決める「基準の線」の位置などを、もっとうまくいくように調整してみます。
  • 「パーセントB」だけでなく、他の道具も組み合わせて使うことで、もっと勝てるタイミングを見つけられるように工夫します。
  • 「今は作戦がうまくいきそう!」という時だけ取引するように、今の状況を判断する新しいルールを追加してみます。

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

  • この作戦は、絶対に勝てるというわけではありません。もし試してみるなら、なくなっても困らない少なめのお金で始めましょう。
  • 「パーセントB」のサインだけを信じるのではなく、他の道具も使って、いろいろな角度から「本当に今がチャンスかな?」と考えることが大切です。
  • 世の中で何が起きているか、ニュースを見ることも大事です。仮想通貨全体の人気や値段の動きにも、気をつけてみましょう。

検証の透明性と信頼性

  • データの出所: この実験で使った値段のデータは、実際の仮想通貨取引所からもらったものです。
  • 検証のやり方: 「もしも昔、この作戦を使っていたらどうなっていたかな?」というのを、過去のデータを使って計算してみました。
  • コード: この作戦を計算するために使ったコンピューターのプログラムは、誰でも見られるように公開しています。
  • 注意事項: 注意してほしいのは、これは昔のデータでの結果だということです。だから、これから先も同じようにうまくいくとは限りません。お金を使うときは、自分でよく考えて決めてくださいね。

よくある質問

Q.「パーセントB」って、どういう意味?

A.今の値段が、最近の動きの中で「高い」のか「安い」のかを教えてくれる道具です。「安い」エリアにあるのか、「高い」エリアにあるのかを数字で示してくれます。

Q.ボリンジャーバンドって何?

A.値段がよく動く「範囲」を教えてくれる線のことです。だいたいこの線と線の間で値段は動くことが多いよ、という目安になります。「パーセントB」はこれを元に計算されています。

Q.勝率が低いって、ダメなの?

A.勝つ回数が少なくても、一回でとても大きく勝てれば、全体ではプラスになることもあります。でも、今回の作戦では、小さな負けがたくさん続いてしまったようです。

Q.プロフィットファクター(PF)って何?

A.儲かった金額が、損した金額の何倍だったかを表す数字です。この数字が1より大きければ、全体としてもうかった、ということになります。

Q.HODL(ホードル)ってどういう意味?

A.仮想通貨を売ったり買ったりしないで、ずーっと持っておくことです。今回の作戦は、ただずっと持っているよりも、結果が悪くなってしまった、という意味で使われています。

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

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

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

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

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

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

Q.HODLとの比較結果は?

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

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

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

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

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

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

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

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

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

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

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

Q.改良の方向性は?

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

著者情報