← All projects

Pine Script Indicator & Strategy Collection

Smaller TradingView builds for several clients, including a futures grid strategy with webhook execution, an ATR-adaptive grid, a multi-mode trend signal indicator with MT5/NT8 versions, and a fundamentals table.

Client
Various TradingView traders
Year
2025
Category
Trading Systems
Stack
  • Pine Script v5
  • Pine Script v6
  • TradingView
  • NinjaScript
  • Webhooks

The problem

Many traders need one specific tool on TradingView: a strategy that can drive a broker through webhooks, a signal indicator for their community, or a data table they check every day. These are the smaller builds from that work.

What I built

  • Futures grid strategy (NQ, MNQ, ES, MES):
    • limit-order grid spaced by percentage, rebuilt only when price drifts past a reset threshold
    • unique entry IDs per level, and per-level flags that block duplicate fills
    • dollar stop and target converted to ticks per contract
    • a max-drawdown kill switch, a trading-hours filter and a status table
    • webhook alert messages ready for an execution service
  • ATR-adaptive grid indicator: grid spacing from ATR or fixed ticks, with a wider grid in NYSE hours. Position and P&L are simulated internally, with a trailing P&L stop, timed flatten windows and JSON alerts.
  • Multi-mode trend signal indicator:
    • four entry modes (EMA touch-and-confirm, EMA-stack cross, EMA/WMA cross, range-MA plus RSI reversal)
    • an optional higher-timeframe calculation, ATR stops and three R-multiple targets
    • signal-alternation and no-re-entry filters
    • JSON alerts only at bar close, consumed by a Python → MT5 executor
    • versions also built as NinjaTrader 8 indicators, alongside a supply-and-demand zone indicator with a volume-ratio filter
  • Fundamentals table: P/E, P/B, P/S, EPS, book value, market cap, revenue, debt/equity, ROE, dividend yield and gross margin from request.financial, with colour thresholds, six themes and compact number formatting.

Details

  • Separate exits per level: a shared entry ID makes TradingView close every level together. Unique IDs let each grid level exit on its own.
  • No repainting: the signal indicator requests the whole signal set from the higher timeframe as one tuple with lookahead off, so the higher-timeframe values stay aligned.
  • Cheap tables: tables are drawn only on the last bar, which keeps heavy scripts fast.