freqtrade-strategy-dev

Develop, iterate, and improve Freqtrade cryptocurrency trading strategies. Use when writing a new strategy, improving an existing one, analyzing why a strategy is losing, or understanding which indicators to use. Covers strategy anatomy, key configuration parameters, proven entry/exit patterns, and the iteration workflow. Trigger phrases: write freqtrade strategy, improve strategy, why is my strategy losing, freqtrade indicators, strategy not profitable, freqtrade entry conditions.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "freqtrade-strategy-dev" with this command: npx skills add djc00p/freqtrade-strategy-dev

Freqtrade Strategy Development

Build profitable trading strategies with disciplined iteration, tight risk management, and data-driven entry/exit rules. Assumes Freqtrade is running via Docker (docker-compose).

Strategy Anatomy

Every Freqtrade strategy requires three methods:

  • populate_indicators(dataframe, metadata) — Add technical indicators (RSI, MACD, Bollinger Bands, etc.) to the dataframe
  • populate_entry_trend(dataframe, metadata) — Define buy signal logic; set enter_long = 1 when conditions met
  • populate_exit_trend(dataframe, metadata) — Define sell signal logic; set exit_long = 1 when conditions met (optional if using ROI/stop-loss)

Key Config Parameters

stoploss = -0.03  # 3% max loss per trade
trailing_stop = True
trailing_stop_positive = 0.01
trailing_stop_positive_offset = 0.02

minimal_roi = {
    "0": 0.04,      # 4% profit target immediately
    "30": 0.02,     # 2% after 30 candles
    "60": 0.01,     # 1% after 60 candles
}

timeframe = "5m"  # or "15m", "1h", etc.
stake_currency = "USDT"
dry_run = True  # Always backtest/dry-run first

Proven Entry Pattern

stoploss = -0.03
trailing_stop = True
trailing_stop_positive = 0.01
trailing_stop_positive_offset = 0.02
minimal_roi = {"0": 0.04, "30": 0.02, "60": 0.01}

# In populate_indicators: calculate RSI, CCI, Bollinger Bands, EMA, Volume SMA

# In populate_entry_trend: only buy when ALL conditions met
conditions = [
    (dataframe['rsi'] < 30),  # Oversold
    (dataframe['cci'] < -100),  # Momentum confirmation
    (dataframe['close'] < dataframe['bb_lowerband']),  # Price near lower band
    (dataframe['volume'] > dataframe['volume_sma']),  # Volume confirms
    (dataframe['bullish_candle']),  # Pattern confirmation
]
dataframe.loc[reduce(lambda x, y: x & y, conditions), 'enter_long'] = 1

Key Lessons Learned

  1. Tight stops save accounts — 3% max loss beats 5%, 7%, or 8% every time
  2. Quality over quantity — 25 selective trades outperform 308 mediocre ones
  3. Win rate alone is meaningless — 63% win rate unprofitable if avg loss is 5x avg gain
  4. Selectivity is survival — RSI(30) + CCI(-100) dual filters dramatically reduce noise
  5. Test in bear markets — If strategy survives a crash, it works everywhere
  6. Volume confirms conviction — Entries without above-average volume fail more often

Useful Indicators

  • RSI (14) — Momentum; < 30 = oversold, > 70 = overbought
  • CCI — Commodity Channel Index; momentum confirmation; < -100 = deep oversold
  • MACD — Trend following; watch for crossovers
  • Bollinger Bands — Volatility; price near lower band = potential reversal
  • EMA — Trend filter; price above EMA = uptrend
  • MFI — Money Flow Index; volume-weighted momentum

Iteration Workflow

  1. Write baseline strategy with core entry/exit logic
  2. Backtest on 90–120 days of historical data
  3. Analyze exit reasons: are you exiting winners or losers too fast?
  4. Tighten ONE parameter at a time (e.g., RSI threshold)
  5. Backtest same period, compare vs. baseline
  6. If better → keep; if worse → revert
  7. Test different market conditions (Bull, bear, sideways)
  8. Dry-run on live feeds before deploying to live trading

Version Control

Keep all versions: name files MyStrategy_v1.py, MyStrategy_v2.py, etc. Add comments above each change explaining what improved and why. This preserves your iteration history and makes reverting safe.

References

  • references/indicators-guide.md — Technical indicator formulas and interpretation
  • references/iteration-workflow.md — Step-by-step walkthrough of strategy optimization

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Web3

Pilot Service Agents Finance

Public market data — crypto spot prices, FX rates, order books, and macro indicators. Use this skill when: 1. Looking up current crypto spot prices (Coinbase...

Registry SourceRecently Updated
Web3

Seven Eleven

Analyze 7-Eleven's global retail model, franchise profit sharing, fresh food supply chain, and Japanese vs Western convenience store strategies.

Registry SourceRecently Updated
210Profile unavailable
Web3

Performance Budget Enforcer

Define, measure, and enforce web performance budgets — bundle sizes, asset counts, image weights, third-party scripts. Fails CI when budgets are exceeded. Tr...

Registry SourceRecently Updated
330Profile unavailable
Web3

Patron

Patrón redefined tequila as a premium spirit by combining high-quality production and luxury branding, transforming it from cheap liquor to a $50+ iconic pro...

Registry SourceRecently Updated
340Profile unavailable