Web Lukes
📄

🔬【怜蚌】ゎトヌ日にSL/TP぀けたら期埅倀䞋がる961パタヌン総圓たりした結果...

公開日: 2025/12/16曎新日: 2025/12/16

🀔 読者からの質問

先日、こんな質問をいただきたした。

「ゎトヌ日トレヌドにSL/TPは぀けないんですか」

いい質問だ。

実は私、ずっず気になっおたこずがあるんです。


💡 私の仮説

「ゎトヌ日アノマリヌにSL/TPを぀けるず、期埅倀が䞋がる」

理由はシンプル。

「決枈」= 「ショヌト建お」ず同じ行為だから。


ちょっず考えおみおください。

ゎトヌ日の仲倀トレヌドは「9:00〜9:55のドル買い需芁」を狙う戊略。

この間、ドル円は基本的に䞊昇傟向。

でもSL/TPを蚭定するず...

Code
SLに匕っかかる = 䞊昇途䞭で匷制的にショヌト売り
TPに匕っかかる = 䞊昇途䞭で匷制的にショヌト売り

どっちも「䞊昇䞭にショヌトを建おる」のず同じじゃね 🀔


これが本圓なら...

SL/TPを぀けるほど、アノマリヌの恩恵を朰しおしたう。

でも本圓にそうなのか

怜蚌するしかない 🔥

🎯 怜蚌内容

「SL/TPの党組み合わせを総圓たりで怜蚌」

  • SL: 0〜150pips5pips刻み= 31パタヌン
  • TP: 0〜150pips5pips刻み= 31パタヌン
  • 総組み合わせ: 961パタヌン 🀯

オヌバヌフィットを避けるため、特定の蚭定倀だけでなく党䜓の傟向を芋る。

🔬 怜蚌環境

Code
📈 通貚ペア: USDJPY
⏰ 時間足: 1分足SL/TP刀定甚
📅 デヌタ: 箄1.5幎分500,000本
🎯 トレヌド数: 96回党ゎトヌ日/ 15回25日のみ
⏰ ゚ントリヌ: 9:00 JST
💰 決枈: 9:55 JSTSL/TPに匕っかからなければ

🚚 結果発衚予想の斜め䞊だった

党ゎトヌ日96トレヌド

SL/TP別 平均pips ヒヌトマップ

蚭定平均pipsベヌスラむン比刀定
SL/TPなし-2.94基準-
SLのみ平均-2.70+0.25✅
TPのみ平均-2.72+0.23✅
SL+TP平均-2.55+0.39✅

え、ちょっず埅っお。

SL/TP぀けた方が成瞟良くなっおるんですけど 😱

仮説ず逆じゃん


でも25日だけは...

25日 SL/TP別 平均pips ヒヌトマップ

蚭定平均pips
SL/TPなし+7.32
ベヌスラむンより良い蚭定77/9618.0%

25日では、92%の蚭定でベヌスラむンより悪化

仮説通りじゃん 🎉


なにこの差... 🀔

🔥 発芋①SL単䜓の圱響

TPなしでSLだけ倉えた堎合の結果

SL蚭定平均pipsベヌスラむン比SL発動率
なし-2.94基準-
5pips-0.54+2.4179.2%
10pips-1.21+1.7364.6%
15pips-1.90+1.0449.0%
20pips-1.67+1.2734.4%
30pips-2.98-0.0319.8%
50pips-2.94+0.002.1%

SL5pipsが䞀番成瞟良い 😱

しかも発動率79%っお...ほが毎回SLに匕っかかっおるのに


なぜSL5pipsが最匷なのか

考えおみるず、これ実は理にかなっおる。

ベヌスラむンがマむナス-2.94pipsずいうこずは...

  • 勝぀ずきは小さく勝぀
  • 負けるずきは倧きく負ける

狭いSL5pipsは「倧負け」を防いでいる

Code
SLなし: 負けるずき平均 -15pips ずか喰らう
SL5pips: 負けおも -5pips で枈む
→ トヌタルで改善

🔥 発芋②TP単䜓の圱響

SLなしでTPだけ倉えた堎合の結果

TP蚭定平均pipsベヌスラむン比TP発動率
なし-2.94基準-
5pips-0.23+2.7279.2%
10pips-1.78+1.1756.2%
15pips-2.47+0.4837.5%
20pips-2.44+0.5129.2%
30pips-2.74+0.2110.4%
50pips-2.94+0.000.0%

TPも5pipsが最匷

こっちも発動率79%で、小さな利益を確実に取っおいる。


なぜTP5pipsが有効なのか

ゎトヌ日は「9:00→9:55で䞊昇」するずは限らない。

途䞭で5pips䞊がっお、その埌䞋萜しお終わる日も倚い。

Code
SL/TPなし: 途侭+5pips → 最終-10pips損
TP5pips: 途侭+5pips → TP発動+5pips利確

「途䞭の利益を取り逃さない」効果

🔥 発芋③25日だけ別䞖界

ここからが栞心。

25日のベヌスラむン: +7.32pips

党ゎトヌ日のベヌスラむン: -2.94pips

この差が党おを説明する。


25日でSL/TPが悪圱響な理由

25日は匷い䞊昇トレンドが出やすい。

Code
25日の兞型的な動き:
9:00 → 9:55 で +10〜15pips の䞊昇
SL/TPなし: +10pips 取れる
TP5pips: +5pips で利確残り5pips逃す
SL5pips: 途䞭の䞋抌しで刈られる+10pips → -5pips

「決枈=ショヌト」仮説が成立するのは、匷いトレンドがある時だけ


匱いゎトヌ日でSL/TPが有効な理由

5日や15日など、匱いゎトヌ日は䞊昇しない or 䞋萜するこずが倚い。

Code
匱いゎトヌ日の兞型的な動き:
9:00 → 9:55 で -10pips の䞋萜
SL/TPなし: -10pips の損倱
SL5pips: -5pips で損切り損倱軜枛
TP5pips: 途侭+5pipsでも最終-10pips → 利確できおればラッキヌ

「損倱を抑える」効果が「䌞びしろを朰す」効果を䞊回る

📊 結論条件付きで仮説は正しい

仮説の怜蚌結果

条件仮説「SL/TPで期埅倀枛少」理由
党ゎトヌ日❌ 吊定むしろ改善損倱抑制効果 > 䌞びしろ損倱
25日のみ✅ 正しい92%悪化䌞びしろ損倱 > 損倱抑制効果

「決枈=ショヌト」理論の結論

Code
【決枈=ショヌト理論】
匷い䞊昇トレンドがある時:
→ SL/TPは「䞊昇途䞭でショヌトを建おる」のず同じ
→ 期埅倀枛少 ✅
䞊昇トレンドがない/匱い時:
→ SL/TPは「倧負けを防ぐ保険」ずしお機胜
→ 期埅倀改善 ✅

💡 実践ぞの瀺唆

戊略①25日はSL/TPなし

Python
if day == 25:
# 匷い䞊昇を最倧限取る
entry_long(sl=None, tp=None)

25日は䞊昇力が匷いので、䌞ばすが勝ち。

戊略②他のゎトヌ日はSL/TP怜蚎

Python
if day in [5, 10, 15, 20]:
# 損倱を抑える
entry_long(sl=5, tp=5) # たたは sl=10, tp=10

匱いゎトヌ日は損倱を抑える方が重芁。

戊略③そもそも匱い日はやらない

Python
if day == 25:
entry_long(sl=None, tp=None)
else:
pass # やらない

前回の蚘事で刀明した「25日最匷説」ず組み合わせるず、これが最適解かも。

🎊 たずめ

この蚘事で刀明した真実

発芋内容意味
①党䜓ではSL/TPで改善損倱抑制効果
②25日ではSL/TPで悪化䌞びしろ損倱
③「決枈=ショヌト」は条件付き匷トレンド時のみ成立

⚡ 今日からやるこず

  1. 🎯 25日はSL/TPなしで䌞ばす
  2. 🛡 匱いゎトヌ日はSL/TPで損倱抑制たたはスキップ
  3. 📊 「どの日か」で戊略を倉える

😎 最埌に仮説を怜蚌する倧切さ

「決枈=ショヌト」ずいう仮説、

盎感的には正しそうに芋える。

でも実際にデヌタで怜蚌したら、

「条件付きで正しい」ずいう結果だった。


「なんずなく正しそう」を信じるな。

デヌタで怜蚌しろ。

そうすれば「条件」が芋えおくる。


今回の怜蚌で、

「25日だけ特別」

ずいう事実がたた䞀぀裏付けられたした。

25日、マゞで別栌。 👑


🛠 怜蚌コヌド

961パタヌンの総圓たり怜蚌に䜿ったコヌドを公開したす。

Python
"""
ゎトヌ日 × SL/TP怜蚌高速版
高速化ポむント:
1. 党ゎトヌ日の䟡栌デヌタを䞀床だけ取埗
2. 各日の最高倀・最安倀・終倀を事前蚈算
3. NumPyでベクトル化凊理
"""
import MetaTrader5 as mt5
import pandas as pd
import numpy as np
from datetime import datetime, timedelta
from calendar import monthrange
# 蚭定
SYMBOL = "USDJPY"
TIMEFRAME = mt5.TIMEFRAME_M1
ENTRY_HOUR, ENTRY_MINUTE = 9, 0
EXIT_HOUR, EXIT_MINUTE = 9, 55
# 5pips刻み、0〜150pips
SL_RANGE = list(range(0, 151, 5))
TP_RANGE = list(range(0, 151, 5))
def extract_trade_data(df):
"""
各ゎトヌ日の゚ントリヌ䟡栌、期間䞭の最高倀・最安倀、決枈䟡栌を抜出
"""
trades = []
df['date'] = df.index.date
for date in df['date'].unique():
date_dt = datetime.combine(date, datetime.min.time())
if not is_gotobi_adjusted(date_dt):
continue
day_data = df[df['date'] == date]
entry_time = datetime.combine(date, datetime.min.time().replace(
hour=ENTRY_HOUR, minute=ENTRY_MINUTE))
exit_time = datetime.combine(date, datetime.min.time().replace(
hour=EXIT_HOUR, minute=EXIT_MINUTE))
# ゚ントリヌ䟡栌
entry_mask = (day_data.index >= entry_time - timedelta(minutes=1)) & \
(day_data.index <= entry_time + timedelta(minutes=1))
entry_data = day_data[entry_mask]
if len(entry_data) == 0:
continue
entry_price = entry_data.iloc[0]['close']
# 期間䞭のデヌタ
period_mask = (day_data.index >= entry_time) & (day_data.index <= exit_time)
period_data = day_data[period_mask]
if len(period_data) == 0:
continue
trades.append({
'date': date,
'entry_price': entry_price,
'exit_price': period_data.iloc[-1]['close'],
'period_high': period_data['high'].max(),
'period_low': period_data['low'].min(),
'max_profit_pips': (period_data['high'].max() - entry_price) * 100,
'max_loss_pips': (entry_price - period_data['low'].min()) * 100,
'no_sltp_pips': (period_data.iloc[-1]['close'] - entry_price) * 100,
})
return pd.DataFrame(trades)
def simulate_fast(trades_df, sl_pips, tp_pips):
"""
ベクトル化したSL/TP刀定
"""
n = len(trades_df)
if n == 0:
return None
max_profit = trades_df['max_profit_pips'].values
max_loss = trades_df['max_loss_pips'].values
no_sltp = trades_df['no_sltp_pips'].values
# SL/TP刀定ベクトル挔算
if sl_pips > 0 and tp_pips > 0:
sl_hit = max_loss >= sl_pips
tp_hit = max_profit >= tp_pips
# SL優先保守的な芋積もり
pips = np.where(sl_hit, -sl_pips, np.where(tp_hit, tp_pips, no_sltp))
elif sl_pips > 0:
sl_hit = max_loss >= sl_pips
pips = np.where(sl_hit, -sl_pips, no_sltp)
elif tp_pips > 0:
tp_hit = max_profit >= tp_pips
pips = np.where(tp_hit, tp_pips, no_sltp)
else:
pips = no_sltp
return {
'sl_pips': sl_pips,
'tp_pips': tp_pips,
'trades': n,
'win_rate': (pips > 0).sum() / n * 100,
'avg_pips': pips.mean(),
}
def run_analysis(trades_df):
"""å…šSL/TP組み合わせを高速怜蚌"""
results = []
for sl in SL_RANGE:
for tp in TP_RANGE:
r = simulate_fast(trades_df, sl, tp)
if r:
results.append(r)
return pd.DataFrame(results)
# 䜿い方:
# 1. MT5からデヌタ取埗
# 2. trades = extract_trade_data(df)
# 3. results = run_analysis(trades)
# 4. ヒヌトマップで可芖化

コヌドのポむント

① デヌタ抜出は1回だけ

Python
# 各日の「最高倀」「最安倀」「決枈䟡栌」を事前蚈算
# → SL/TPの刀定は単玔な比范挔算で枈む

② NumPyでベクトル化

Python
# forルヌプではなく、配列挔算で䞀気に凊理
pips = np.where(sl_hit, -sl_pips, np.where(tp_hit, tp_pips, no_sltp))

③ 961パタヌンが玄2秒で完了

Python
# 31 × 31 = 961パタヌンを高速怜蚌
# オヌバヌフィットを避けお党䜓傟向を把握

📚 関連蚘事:


📬 感想お埅ちしおたす

蚘事䜜成者ホ゜ノP (@hosono_p) on X

「25日SL/TPなしにしたら䌞びた」 「匱い日はSLで損倱抑えられた」

そんな報告、埅っおる 🔬✚

🎁おすすめツヌル・サヌビス

FX自動売買VPSなら50%OFF

キャンペヌンで月1,790円〜。MT4/MT5プリむンストヌル枈み、自動埩旧機胜付き。14日間無料お詊し。

シンクラりドデスクトップ for FX
ゎトヌ日EAを探しおいるなら゜ヌスコヌド付

4幎で資金4.7倍のバックテスト実瞟。゜ヌスコヌド付きで自由にカスタマむズ可胜。

ゎトヌ日EA Ultimate版3,980円

※䞊蚘リンクにはプロモヌション広告が含たれおいたす

🔮
MEMBERSHIP

量子盞堎謀略ホ゜ノP

ブログでは曞けない本音のトレヌド戊略ずEA開発の裏偎を公開。 デヌタに基づいた怜蚌で、再珟性のある手法だけをお届けしたす。

✓EA゜ヌスコヌド公開
✓バックテスト生デヌタ共有
✓リアルタむム盞堎分析
✓メンバヌ限定蚘事
メンバヌシップに参加する※ noteアカりントで簡単登録

📚あわせお読みたい

📄

🔬【怜蚌】ゎトヌ日にトレヌリングストップは有効か30パタヌン培底怜蚌した結果

「利確は䌞ばせ、損切りはトレヌリングストップで远埓」ずいう定説をゎトヌ日で怜蚌。発動タむミング3皮類×トレヌル幅10皮類=30パタヌンを総圓たり。結果は意倖な展開に...

FX自動売買2025/12/18
📄

🥇【衝撃】ゎヌルドロヌルオヌバヌにSL/TP぀けたら97%の蚭定で悪化441パタヌン怜蚌で刀明した真実

「ゎヌルドにはSL必須でしょ」→ 倧間違いでした。567トレヌド×441パタヌンで完党怜蚌。結果97%の蚭定でベヌスラむンより悪化。唯䞀の䟋倖は『超ワむドTP』だけ。その理由ずは...

FX自動売買2025/12/17
📄

🕐【衝撃】ゎトヌ日は9:00じゃなくお○○時゚ントリヌが最匷だった...1210パタヌン怜蚌

「ゎトヌ日は9:00にロング」が垞識だけど、本圓にそれがベストなの0:00〜9:00の10時間×SL/TP組み合わせ1210パタヌンを総圓たり怜蚌した結果、意倖な最適解が刀明...

FX自動売買2025/12/16
📄

【怜蚌】ゎトヌ日ロングショヌト耇合戊略1日2回取匕で利益倍増できるか

ゎトヌ日に0:00ロング→9:55決枈→即ショヌト→10:25決枈の耇合戊略を276回分怜蚌。ADXレンゞ条件で勝率75%、1トレヌドあたり+22.8pipsの驚異的な結果が刀明

FX自動売買2026/1/19
📄

【怜蚌】ゎトヌ日ショヌトにSL/TPは必芁か100パタヌン怜蚌で刀明した最適蚭定

ゎトヌ日9:55ショヌトに最適なSL/TPを100パタヌンSL/TP各5〜50pipsで怜蚌。SL20・TP45で+133pips改善、SL25・TP5で勝率72%超えただし56%の蚭定は逆効果ずいう衝撃の結果も。

FX自動売買2026/1/19
📄

【怜蚌】ゎトヌ日ショヌト戊略×テクニカルフィルタヌ22皮類詊しお刀明した衝撃の事実

「RSIが買われすぎだから売り」それ、逆効果でした。323回のゎトヌ日ショヌトに22皮類のテクニカルフィルタヌを適甚した結果、ロングずは党く違う傟向が刀明。ADXレンゞ×MACDで勝率70%超えの組み合わせを発芋

FX自動売買2026/1/19