Skip to main content

asian-session-scalper

Tokyo session low-volatility scalping setups — range-bound strategies for the quietest session. Use for "Asian scalp", "Tokyo session trade", "Asian range", "night scalping", "low vol scalp", "Asian session strategy", or any Tokyo-session-specific trading. Works with session-profiler.

설치로 이동

소스 정보

저장소
mahmoud20138/Tradecraft
최근 소스 활동
2026년 4월 23일 08:40
감지된 SKILL.md 언어
영어
스타
15
포크
4

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
asian-session-scalper
description
Tokyo session low-volatility scalping setups — range-bound strategies for the quietest session. Use for "Asian scalp", "Tokyo session trade", "Asian range", "night scalping", "low vol scalp", "Asian session strategy", or any Tokyo-session-specific trading. Works with session-profiler.
kind
reference
category
trading/strategies
status
active
tags
["asian","scalper","scalping","session","strategies","trading","volatility"]
related_skills
["jdub-price-action-strategy","session-scalping","gap-trading-strategy","grid-trading-engine","session-profiler"]
# Asian Session Scalper ```python import pandas as pd, numpy as np class AsianSessionScalper: @staticmethod def range_fade(df: pd.DataFrame) -> dict: """Fade the range during Tokyo session — buy lows, sell highs of the range.""" df = df.copy() df["hour"] = df.index.hour asian = df[(df["hour"] >= 0) & (df["hour"] < 7)] if len(asian) < 10: return {"error": "Insufficient Asian data"} range_high = asian["high"].rolling(20).max().iloc[-1] range_low = asian["low"].rolling(20).min().iloc[-1] mid = (range_high + range_low) / 2 current = df.iloc[-1]["close"] atr = (asian["high"] - asian["low"]).mean() return { "strategy": "asian_range_fade", "range_high": round(range_high, 5), "range_low": round(range_low, 5), "midpoint": round(mid, 5), "signal": "BUY (near range low)" if current < range_low + atr * 0.3 else "SELL (near range high)" if current > range_high - atr * 0.3 else "WAIT (mid-range)", "stop_pips": round(atr * 10000 * 1.5, 1), "target_pips": round(atr * 10000 * 1.0, 1), "best_pairs": ["USDJPY", "EURJPY", "AUDJPY", "AUDNZD"], "avoid": ["GBPUSD", "EURUSD (low liquidity in Asia)"], } ``` --- ## Asian Breakout Strategy ```python @staticmethod def asian_breakout(df: pd.DataFrame, buffer_pips: float = 3.0) -> dict: """Trade the breakout of the Asian range during London open.""" df = df.copy() df["hour"] = df.index.hour asian = df[(df["hour"] >= 0) & (df["hour"] < 7)] if len(asian) < 10: return {"error": "Insufficient Asian data"} range_high = asian["high"].max() range_low = asian["low"].min() range_size = range_high - range_low pip_size = 0.0001 if range_size < 1 else 0.01 buffer = buffer_pips * pip_size return { "strategy": "asian_breakout", "buy_stop": round(range_high + buffer, 5), "sell_stop": round(range_low - buffer, 5), "stop_loss_pips": round(range_size / pip_size * 0.5, 1), "tp1_pips": round(range_size / pip_size * 1.0, 1), "tp2_pips": round(range_size / pip_size * 1.5, 1), "range_size_pips": round(range_size / pip_size, 1), "valid": range_size / pip_size < 40, # Skip if range too wide "best_time": "07:00-09:00 UTC (London open)", "best_pairs": ["GBPJPY", "EURJPY", "USDJPY", "GBPUSD"], } ``` ## Session Timing Reference | Session | UTC Hours | Characteristics | |---------|-----------|-----------------| | Tokyo | 00:00-07:00 | Low volatility, range-bound, JPY pairs active | | London Open | 07:00-09:00 | Breakout of Asian range, highest volatility spike | | London | 07:00-16:00 | Trend development, EUR/GBP pairs active | | NY Overlap | 12:00-16:00 | Highest liquidity, major reversals | ## Rules 1. **Only scalp in Asian session** (00:00-07:00 UTC) for range-fade strategy 2. **Avoid Mondays** — Asian ranges are unreliable after weekend gaps 3. **Skip news nights** — BOJ, RBA, RBNZ releases destroy Asian ranges 4. **Max 3 trades per session** — low volatility means low opportunity count 5. **Tight stops** — 1.5x ATR max; if stopped, do not re-enter same direction
GitHub에서 보기