Bitcoin Almanac [WillyAlgoTrader]₿ Bitcoin Almanac is an overlay indicator that maps the entire Bitcoin macro landscape on one chart: a fixed-length cycle time model (bull/bear phases projected from a single anchor date), two hyperbolic curves fitted through historical cycle lows and cycle highs in log-price space, Fibonacci grids stretched between every macro pivot, halving markers, accumulation and distribution zones, and a hypothetical price path for the next bull leg — all summarized in a live dashboard with projected turn dates, curve prices, and historical correction depths.
The core insight: Bitcoin's completed cycles show a remarkably stable time rhythm (roughly 1064 days up, 364 days down) and a decelerating growth pattern that a hyperbola in log10(price) captures with surprisingly small error. Neither observation is a law of nature — but when the time model and the price curves are combined on one chart, they produce concrete, falsifiable reference points: a projected top date with a curve price, a projected bottom date with a curve price, and buy/sell zones derived from both. The indicator makes the whole framework explicit, configurable, and honest about its assumptions.
Everything is driven by dates and user-defined pivots — not by real-time price action — so nothing repaints: the lines you see today are the lines you saw yesterday.
🧩 WHY THESE COMPONENTS WORK TOGETHER
A cycle-date model alone answers WHEN but not AT WHAT PRICE. A curve through historical lows answers WHERE support migrates but not WHEN price will meet it. Fibonacci retracements answer WHERE pullbacks tend to end, but only if you know which macro leg to anchor them to. Used separately, each tool leaves you guessing at the missing dimension.
Bitcoin Almanac chains them into one pipeline:
Cycle time model (anchor + phase lengths) → projected turn dates → hyperbolic lows/highs curves → curve price AT each projected date → Fibonacci grids between macro pivots → 0.786–0.836 accumulation zones bounded by cycle end dates → ±% distribution zones around each high → replayed bull-path projection between the two curve endpoints → dashboard synthesis
The time model supplies the X-coordinate of every future event. The two hyperbolas supply the Y-coordinate: the lows curve is evaluated exactly at the projected bottom date, the highs curve exactly at the projected top date — the "◎ cycle × curve" labels mark these intersections with date and price. The Fibonacci grids are then anchored to the same pivots the curves are built from, so the 0.786–0.836 buy zone of the current leg stretches in time precisely to the model's next cycle-bottom date. Finally, the projection module takes the two curve × date intersections as endpoints and fills the path between them by replaying the shape of the previous bull phase in log space.
No single component can do this: the intersection of an independent time model with an independent price model is what turns two vague trajectories into specific, checkable coordinates.
🔍 WHAT MAKES IT ORIGINAL
1️⃣ Fixed-rhythm cycle engine — pure time math, zero price input.
The phase of any bar is computed directly from calendar time:
daysSince = (barTime − anchor) / 86 400 000
phasePos = daysSince mod (bullDays + bearDays)
isBull = phasePos < bullDays
Defaults: anchor = 07 Nov 2022, bullDays = 1064, bearDays = 364 (each ≈ the average of the three completed BTC cycles). A true mathematical modulo (always ≥ 0) phases bars BEFORE the anchor correctly, so past cycles line up too. With defaults this reproduces the well-known projected dates: top ≈ 06 Oct 2025, bottom ≈ 05 Oct 2026. An alternative anchor (21 Nov 2022 — the actual lowest trade of the cycle) is documented right in the input tooltip and shifts the bottom to 19 Oct 2026.
Why this matters: because the phase depends only on time, the bull/bear background, turn lines and flip alerts are deterministic and cannot repaint — the model's claims are fully falsifiable in advance.
2️⃣ Hyperbolic curve through cycle lows — exact geometry or least-squares fit, with the error printed on the chart.
The lows model is log10(price) = a + b / (c − t), where t is days from the first pivot. The hyperbola has a vertical asymptote in the past and a horizontal asymptote in the future — it encodes decelerating growth, which a straight log-regression line cannot.
— With exactly 3 enabled lows (default: Aug 2015 ≈ $169, Dec 2018 ≈ $3 122, Nov 2022 ≈ $15 476) the three parameters are solved exactly — the curve passes through the pivots by construction. This is geometry, not statistics, and the label says so: "exact through 3 lows".
— With 4+ enabled lows (three optional early-history slots: 2011, 2013, 2015 are provided) the indicator switches to a least-squares fit: a coarse log-spaced search over 250 candidate asymptote positions, followed by a 200-step linear refinement around the best candidate. The curve label then reports the number of points and the RMSE in log10 units — the fit quality is never hidden.
A fit is accepted only if b > 0 and the asymptote c lies before the earliest pivot — degenerate solutions are rejected and the curve simply doesn't draw.
3️⃣ Second independent hyperbola through cycle highs.
The same model is fitted to cycle tops (defaults: Nov 2013 ≈ $1 238, Dec 2017 ≈ $19 700, Nov 2021 ≈ $69 000, Oct 2025 ≈ $126 200 — four points, so LS fit with visible RMSE). A fifth, disabled slot exists only if you want to force the fit through your own future target; you never need it for the projection, because the future top is marked automatically at the crossing of the highs curve with the projected top date.
Why two curves: lows and highs decelerate at different rates. Fitting them independently (instead of offsetting one curve) lets the model express a narrowing channel without assuming its shape.
4️⃣ "Cycle × curve" intersection labels — the model's testable predictions.
At the projected bottom date the lows curve is evaluated: ◎ label with date ≈ price. At the projected top date the highs curve is evaluated: ◎ label with date ≈ price. These two points are the indicator's headline output — a date AND a price for each future turn, derived from two independent models. Both curves extend beyond their intersection as dashed lines (lows: default 10 years, highs: 5 years) to show the long-term trajectory.
5️⃣ Macro Fibonacci grids with a time-bounded 0.786–0.836 accumulation zone.
All enabled lows and highs are merged chronologically; every leg between two pivots of opposite type receives a grid (low→high = bull grid, high→low = bear grid; same-type neighbours are skipped). Levels are fully user-defined (default: 0, 0.236, 0.382, 0.5, 0.618, 0.786, 0.836, 0.886, 1; values > 1 add extensions).
Two non-standard options:
— Log-scale interpolation : level price = 10^(log10(pA) + f × (log10(pB) − log10(pA))) — matches a fib tool drawn on a log chart. Off by default (arithmetic levels for a linear chart).
— Reverse mode (default ON): ratio 0 sits at the END of the leg, so on a bull leg 0.618 is the classic retracement below the high.
The 0.786–0.836 zone of each bull leg is highlighted as a "BUY ZONE" box — and here is the original part: the box stretches in time from the leg start to the end date of the cycle the leg belongs to (the next projected cycle bottom). Depth from the fib model, deadline from the time model — the zone is a rectangle in (price × time), not just a price band.
6️⃣ Distribution zones tied to the cycle skeleton.
Every enabled high gets a "SELL ZONE" box spanning high ± sellPct (default 5% → from high × 0.95 to high × 1.05). The time span runs from the LATER of (a) the latest enabled low before that high or (b) the model's cycle bottom immediately preceding it — so a projected 2029 high starts its zone at the projected Oct-2026 bottom, not at a 2022 pivot. If no enabled high exists in the upcoming cycle, a projected sell zone is created automatically at the highs-curve × projected-date crossing (duplicate-guarded within half a cycle).
7️⃣ Bull-path projection — fractal replay of the previous bull, rescaled in log space.
The path for the NEXT bull phase (with defaults: 05 Oct 2026 → 03 Sep 2029) is drawn between two model-derived endpoints: start = lows curve at the projected bottom, end = highs curve at the following projected top. Two shapes:
— Replay last bull (default): the log-price trajectory of the previous bull phase is recorded bar by bar (confirmed bars only, thinned to ≤ 400 samples for memory safety on intraday timeframes), then linearly rescaled: y(progress) = yStart + (ref(progress) − ref(0)) × (yEnd − yStart) / (ref(1) − ref(0)). The result keeps the timing character of the last cycle — early acceleration, mid-cycle chop, late blow-off — mapped onto the new endpoints.
— Log-linear : a straight line on a log chart between the endpoints. The replay mode automatically falls back to log-linear if the reference phase covers less than 90% of the bull duration.
The path is explicitly labeled "◇ PROJECTED PATH (hypothetical)" — it is a scenario generator, not a forecast.
8️⃣ Corrections table — every macro drawdown since 2014, including the unfinished one.
The dashboard lists every completed high → following-low leg between enabled pivots since 2014 as a % drop (e.g. 2017–2018: −84%). If the latest pivot is a high with no low after it, the current correction is projected : measured from that high to the lows-curve price at the next model bottom, and marked "(proj.)" in accent color. You always see how the ongoing decline compares with history.
9️⃣ Full-transparency dashboard with a phase gauge and next-leg scenario PNL.
Four toggleable sections: Cycle (phase, day X / Y, ██████░░░░ progress gauge), Projection (top and bottom dates with days-left counters and curve prices, plus the hypothetical PNL of the next bull leg: (topCurve / bottomCurve − 1) × 100% and the × multiple), Corrections (see 8️⃣), Ranges (nearest upcoming buy range = the 0.786–0.836 zone prices; nearest sell range = the ±% zone around the next projected high). The footer states the calibration chart (INDEX:BTCUSD · W · linear scale, with a live ✓ when you're on it), a timeframe warning, and the sample-size caveat "⚠ Sample size: 3 cycles" — the model's biggest limitation is printed on the chart itself.
🔟 Efficient, tick-stable rendering.
All drawings (500+ polyline points, fib grids, boxes, dashboard) are anchored to bar-open times and first-bar curve fits — nothing changes within a bar. A redraw gate rebuilds them once per new bar instead of on every real-time tick, and both curve fits run exactly once on the first bar. The chart stays responsive even with all modules enabled.
📐 HOW IT WORKS — CALCULATION FLOW
Step 1 — Parse pivots: on the first bar, all enabled lows and highs are converted to (days-from-first-pivot, log10(price)) pairs.
Step 2 — Fit the curves: each set is fitted to log10(price) = a + b/(c − t) — exact solve for 3 points, two-stage least-squares search for 4+. Fit validity is checked (b > 0, asymptote before the data).
Step 3 — Phase every bar: calendar-time modulo against the anchor determines bull/bear phase, day-in-phase, and the timestamps of the current, next bottom and next top.
Step 4 — Evaluate intersections: the lows curve at the projected bottom date and the highs curve at the projected top date become the model's price targets.
Step 5 — Record the reference bull: during the anchor cycle's bull phase, confirmed closes are stored as (progress, log10 price) — the shape later replayed by the projection.
Step 6 — Draw (once per bar): turn lines and labels for N past and M future cycles, both hyperbolas with dashed extensions, fib grids per alternating pivot leg, buy/sell zone boxes, halving lines (2012 / 2016 / 2020 / 2024 solid, Apr 2028 dashed "(est.)"), the projected path, the dashboard and the watermark.
Step 7 — Alert: on confirmed bars, phase flips and the pre-turn countdown fire alert() calls in text or JSON format.
📖 HOW TO USE
🎯 Quick start:
1. Open the INDEX:BTCUSD chart, Weekly timeframe, regular (linear) price scale — the model is calibrated there, and the dashboard shows a ✓ when the symbol and timeframe match (the scale must be checked manually — Pine cannot detect it).
2. Add the indicator. The green/red background immediately shows the model's current phase; the dashboard shows the day count and progress gauge.
3. Find the two ◎ labels — the projected bottom (orange, lows curve) and the projected top (red, highs curve). These are the model's date + price coordinates for the next turns.
4. Check the yellow boxes: BUY ZONE (0.786–0.836 of the current bull leg, extended to the cycle end date) and SELL ZONE (±5% around each high).
5. Create ONE alert with condition "Any alert() function call" to receive flips and the pre-turn countdown.
👁️ Reading the chart:
— 🟢 Green background = model bull phase; 🔴 red = bear phase
— Solid green verticals = cycle bottoms; dashed red verticals = cycle tops; future turns are labeled ★ PROJECTED and drawn brighter
— 🟠 Orange curve = hyperbola through cycle lows (solid to the projected bottom, then dashed extension)
— 🔴 Red curve = hyperbola through cycle highs (solid to the projected top, then dashed extension)
— Small circles = the exact pivots each curve is built from
— ◎ labels = cycle × curve intersections with date, ≈ price, and fit info (point count + RMSE, or "exact through 3")
— Fib grids between macro pivots: solid edges (0 / 1), dashed 0.5, dotted intermediate levels, price + ratio labels on the right
— 🟡 Yellow boxes = BUY ZONE (0.786–0.836, time-bounded by the cycle end) and SELL ZONE (±% around highs; "(proj.)" = auto-generated at the projected top)
— ⛏ Grey verticals = halvings; the 2028 line is dashed and marked "(est.)"
— 🔵 Blue dashed path = hypothetical next-bull trajectory with its ◇ end label
📊 Dashboard fields:
— Phase / Phase day / Progress : current model phase, day within it, and a 10-segment gauge
— Proj. top / Proj. bottom : projected turn dates, days remaining, and the curve price at each date
— Next leg PNL : hypothetical bottom→top move of the next bull leg in % and as a × multiple — a scenario, not a forecast
— Corrections : every completed macro drawdown since 2014 (high → following low, %), plus the unfinished one projected to the curve bottom and marked (proj.)
— Next buy range / Next sell range : the price boundaries of the nearest upcoming accumulation and distribution zones
— Footer: recommended chart check, timeframe warning, sample-size caveat, version
🔧 Tuning guide:
— Curve doesn't draw: fewer than 3 pivots enabled, or the fit was rejected as degenerate — enable at least 3 lows (or highs) with sensible dates/prices.
— You disagree with a pivot price: every pivot is an editable date + price input — correct it and both the curve and the fib grids rebuild instantly.
— Want dates matching the actual price low: switch the anchor to 21 Nov 2022 (documented in the tooltip); the projected bottom moves to 19 Oct 2026.
— Fib levels look wrong on a log chart: enable "Log-scale levels" (keep it OFF on the recommended linear chart).
— Chart feels crowded: disable individual modules (grids, zones, halvings, projection) or dashboard sections — every block has its own switch.
— Curious about 2030+: enable "Show 2nd projected cycle" for one more bottom/top pair (~Sep 2030 / ~Aug 2033) — off by default because those dates carry double model uncertainty.
💡 Trading ideas:
— Accumulation planning : scale into the 0.786–0.836 BUY ZONE while the model is in its bear phase; the zone's right edge tells you the model's deadline.
— Distribution planning : scale out inside the ±5% SELL ZONE as the projected top date approaches; the pre-alert (default 30 days) gives you a heads-up.
— Scenario testing : move pivots, change phase lengths, or force High #5 to your own target and watch how the whole framework (curves, zones, PNL) responds — the model is a sandbox, not an oracle.
⚙️ KEY SETTINGS
⚙️ Cycle Model:
— Anchor — cycle bottom (default 07 Nov 2022): date all phases are projected from; alternative 21 Nov 2022 documented in the tooltip
— Bull phase length (default 1064 days) / Bear phase length (default 364 days): ≈ averages of the 3 completed cycles
— Cycles to draw back (default 3) / forward (default 1): how many turn lines and labels are drawn
— Show 2nd projected cycle (default off): one extra bottom/top pair with doubled uncertainty
🎨 Visual Settings:
— Theme (Auto / Dark / Light): Auto detects from the chart background; all text colors adapt
— Phase background , Cycle turn lines , Turn labels , Watermark : independent toggles with color inputs
📊 Dashboard:
— Position (4 corners), font size (Small–Huge; dividers render one step smaller), and per-section switches: Cycle / Projection / Corrections / Ranges
📈 Hyperbola — Lows:
— 3 main cycle lows (2015 / 2018 / 2022, on by default) + 3 optional early-history lows (2011 / 2013 / 2015) — each is a checkbox + date + price
— Dashed extension (default 10 years), curve color, anchor-point markers
📉 Hyperbola — Highs:
— 4 cycle highs (2013 / 2017 / 2021 / 2025, on by default) + a spare projected slot (off), extension (default 5 years), curve color
🔢 Fibonacci Grids:
— Bull grids (default on) / Bear grids (default off) with separate colors
— Levels (default "0, 0.236, 0.382, 0.5, 0.618, 0.786, 0.836, 0.886, 1"; values > 1 = extensions)
— Highlight 0.786–0.836 zone (default on), Log-scale levels (default off), Reverse (default on), level labels
⛏ Halvings: lines + labels toggles, color
🟡 Sell Zones: toggle, color, Zone size % from high (default 5%)
🔮 Price Projection: toggle, Path shape (Replay last bull / Log-linear), color
🔔 Alerts: master switch, Webhook JSON Format (default off), Pre-alert days (default 30)
🔔 ALERTS
— 🟢 CYCLE FLIP → BULL — model bottom date reached; payload: ticker, timeframe, price, next projected top date
— 🔴 CYCLE FLIP → BEAR — model top date reached; payload: ticker, timeframe, price, next projected bottom date
— ⏳ CYCLE TURN APPROACHING — fires once, N days (default 30) before the next projected turn; payload: turn type (TOP/BOTTOM), days left, date
All alerts fire on confirmed bars only (once per bar close) and support both human-readable text and JSON webhook payloads for bot integration. Create a single alert with condition "Any alert() function call".
⚠️ IMPORTANT NOTES
— 🚫 No repainting. The cycle phase is pure calendar-time math against a fixed anchor; the curves are fitted once from user-defined historical pivots; the reference bull shape is recorded from confirmed bars only; all alerts use bar-close frequency. Nothing in the model reads unconfirmed real-time data, so no line, zone or label moves after the fact.
— 📐 Sample size: 3 completed cycles. Every statistical claim in this model rests on three observations. The hyperbolic fits are geometry/regression over 3–6 points. Treat all projected dates and prices as reference scenarios with wide error bars — the dashboard says "Rhythm ≠ law" for a reason.
— 📏 Calibrated chart: INDEX:BTCUSD, Weekly, regular (linear) price scale. Exchange charts start later and distort early-history fits. Keep the fib "Log-scale levels" input OFF on a linear chart. The dashboard's ✓ confirms symbol and timeframe; the scale must be checked manually.
— ⚖️ Scope: this is a macro-cycle framework for Bitcoin. It produces no intraday entry signals, no stop placement, and no position sizing. The projected path is explicitly hypothetical.
— 🛠️ This is a cycle-analysis and scenario-visualization tool, not an automated trading bot. It provides projected turn dates, curve-based price references, and accumulation/distribution zones — trade decisions remain yours.
— 🌐 The script runs on any symbol and timeframe, but the model is designed for Bitcoin on Daily/Weekly charts — a dashboard warning appears on intraday timeframes.
Bitcoin Almanac · v1.5.2 Indicator

Bitcoin Cycle Highs and LowsOVERVIEW
The Bitcoin Cycle Highs and Lows indicator maps out the historical macro market cycle tops and bottoms of Bitcoin, dating back to 2011. In addition to serving as a visual map of historical market phases, the indicator features an algorithmic projection engine. This engine uses various statistical and geometric decay models to forecast the date and price of future macro highs and lows based on the asset's historical behaviour.
This tool is designed for macro-level market analysis, allowing traders to visualise diminishing returns, cycle duration trends, and phase retracements.
CHART ELEMENTS
When applied to a chart, the indicator plots several visual elements:
• Vertical Cycle Markers: Solid vertical lines identify the exact date of historical macro highs (Red) and macro lows (Lime).
• Price & Date Labels: Located at the anchor of each vertical line, detailing the exact recorded date and price (formatted automatically to the chart's active currency).
• Phase Arrows (Dashed Lines): Horizontal dashed lines connecting a low to the subsequent high (Bull Phase) or a high to the subsequent low (Bear Phase).
• Phase Statistics: Floating text labels positioned at the end of each Phase Arrow. These display the duration of the phase in days, the absolute price change, and the percentage move from the previous point.
PREDICTION MODELS
The indicator includes multiple distinct mathematical models for projecting future dates and prices.
Date Predictors:
• Previous bar count: Projects the next date by applying the exact duration of the most recent corresponding cycle.
• Average: Calculates the simple arithmetic average duration of all historical cycles of the same type.
• Weighted average: Averages previous cycle lengths but applies a mathematical recency bias, giving more weight to recent cycles to account for cycle duration stabilisation.
Price Predictors:
• Previous % move: Projects the next target by applying the exact percentage multiplier of the most recent corresponding cycle.
• Average: Projects the target using the geometric mean of all historical cycle multipliers, limiting the skew of extreme outliers.
• Diminishing gains: Analyses the cycle-over-cycle rate of change. It isolates peak-to-peak or trough-to-trough macro moves, calculates the historical decay in those percentage gains, and applies the decayed growth rate to project the next target.
• Fibonacci extension decay: Evaluates swing ratios by measuring the magnitude of a phase relative to the preceding phase (for example, how far a bull market extended past the previous bear market drop). It calculates the historical decay of that extension premium and applies it to the current swing.
SETTINGS AND INPUTS
• Predictions: Determines the number of future cycle highs and lows to project (0 to 9). Set to 0 to disable projections and only view historical data.
• Date predictor: Selects the algorithmic model used to project the X-axis (time) coordinate of future cycle points.
• Price predictor: Selects the algorithmic model used to project the Y-axis (price) coordinate of future cycle points.
• Bear/Bull market arrows: Toggles the visibility of the horizontal dashed lines and their accompanying statistical labels.
• Full height backgrounds: When true, vertical cycle markers extend infinitely across the Y-axis. When false, markers anchor precisely to the price level of the previous cycle phase, creating a stair-step visualisation.
• Ignore 2011 cycle: Excludes the extreme volatility and outliers of the 2011 cycle from the indicator's mathematical averages and trend decay calculations.
• Backtest # lows/highs: A testing feature that temporarily removes the most recent 1 or 2 historical cycle points from the dataset. This allows users to test the prediction models against known outcomes to evaluate their historical accuracy.
Indicator

Indicator

Indicator

Coinbase Bitcoin Premium IndexCoinbase Bitcoin Premium Index — Simple Explanation
What is it? It simply compares the Bitcoin price on Coinbase (a major U.S. exchange) to the average Bitcoin price across the rest of the world. That difference is the "premium."
How is it calculated? Take the Coinbase price, subtract the global price, divide by the global price. That gives you a percentage that tells you how much higher or lower Coinbase is vs the rest of the world.
What does it mean?
When it's positive (above zero), Bitcoin costs more on Coinbase than elsewhere. This usually means Americans are buying aggressively, big institutions are putting money in, and the mood in the U.S. market is optimistic.
When it's negative (below zero), Bitcoin is cheaper on Coinbase than elsewhere. This usually means Americans are selling, investors are nervous, and money is leaving the market.
Why does it matter? Coinbase is the most regulated and institution-friendly exchange in the U.S. So when this index moves, it often tells you what big U.S. investors and institutions are doing, which tends to move the market.
What happened historically?
During the 2020–2021 bull run the premium stayed positive for a long time, which matched companies like Tesla and MicroStrategy buying massive amounts of Bitcoin.
During the 2022–2023 crash it turned negative often, reflecting fear and heavy selling in the U.S.
Since 2024 traders use it to compare whether Americans or Asians are driving the Bitcoin price on any given day.
Bottom line It's a simple but powerful way to see who is buying or selling Bitcoin and where the pressure is coming from.
Why I added the EMA
The raw premium bounces a lot bar to bar, it's noisy. The EMA smooths it so you can see the trend of the premium, not just the momentary spike. For example if the premium is oscillating around zero but the EMA is slowly rising, that tells you U.S. buying pressure is quietly building even if individual bars look messy.
That said, you're right to question it. For this specific indicator, many traders prefer to read it raw because:
The premium itself is already a derived/smoothed concept
Adding an EMA on top can delay signals
The zero line crossovers are more meaningful than EMA crossovers here
What serious analysts actually use with this indicator:
Divergence — price makes a new high but premium is falling = warning sign
Extended positive streaks — premium stays positive for many consecutive bars = strong institutional accumulation phase
Spike + reversal — a sudden extreme spike followed by quick reversal often precedes a price move
Correlation with funding rates — combining this with perpetual futures funding rates gives a much clearer picture of market positioning
Asian vs U.S. session comparison — checking the premium specifically during U.S. market hours vs Asian hours reveals who is driving price Indicator

Indicator

Crypto Sector Rotation Radar Pro | Altseason & Memecoin TrackerA live cross-sectional ranking of 7 crypto sectors that answers a question every alt and memecoin trader asks: where is capital actually flowing right now?
Most existing sector-rotation visualizations on PulseWire normalize each sector independently against its own historical range. That approach has a fundamental flaw — when one sector reads "80" and another reads "70," those numbers are not comparable to each other, because each one is relative to its own past, not to the other sectors. You cannot rank sectors that way.
This script does it differently. Every sector's momentum is measured against the same benchmark — TOTAL crypto market cap — so the resulting scores are directly comparable. Then sectors are ranked #1 through #7 in real time. The output is a single dashboard table that tells you, at a glance, which sectors are leading, which are lagging, and which are accelerating or fading.
▸ WHAT IT DOES
For each of 7 crypto sectors, the script:
1. Computes the sector-cap-to-TOTAL ratio
2. Measures rate-of-change of that ratio across three windows (default: 7, 14, 30 bars)
3. Blends the three windows by user-configurable weights into a single raw RS reading
4. Cross-sectionally ranks all 7 sectors against each other (#1 strongest, #7 weakest)
5. Converts rank to a 0–100 RS Score (rank 1 → 100, rank 4 → 50, rank 7 → 0)
6. Tracks rank change over 3 and 7 bars to surface acceleration and rotation
7. Classifies each sector's flow as IN, OUT, or NEU based on rank and momentum
All of this is rendered in a sortable dashboard table, with optional smoothed RS lines plotted below for historical pattern context.
▸ SECTORS TRACKED
• 🚀 Memecoins (CRYPTOCAP:MEME.C)
• Ξ Ethereum Eco (CRYPTOCAP:ETHEREUM.C)
• 🏛 RWA (CRYPTOCAP:RWA.C)
• 🤖 AI (CRYPTOCAP:AI.C)
• ◎ Solana Eco (CRYPTOCAP:SOLANA.C)
• 🏢 Exchange Tokens (CRYPTOCAP:EXCHANGES.C)
• 🏦 DeFi (CRYPTOCAP:TOTALDEFI)
The benchmark for all RS calculations is CRYPTOCAP:TOTAL.
▸ HOW TO READ THE TABLE
Each row shows one sector with six columns:
• SECTOR — emoji and name
• RANK — current cross-sectional rank (#1 = strongest, #7 = weakest)
• RS — 0–100 score derived from rank
• Δ3D — rank change over the last 3 bars, with a heat badge (🔥 ▲ ↗ · ↘ ▼ ❄️)
• Δ7D — rank change over the last 7 bars
• FLOW — IN (top 3 + positive momentum), OUT (bottom 3 + negative momentum), NEU (mixed)
A footer row summarizes the regime in plain language:
• 🔥 Memes in Top 2 — Meme Rotation
• ⚠️ Risk-Off Regime — defensive sectors leading while risk-on lagging
• ❄️ Memes in Bottom 2 — sector weak
• Mixed Rotation — no clear leader pattern
The memecoin row is highlighted by default to make it stand out at a glance for memecoin-focused traders. This can be toggled off in settings.
▸ HOW TO READ THE LINES
Below the table, each sector's RS Score is plotted as a smoothed line using EMA smoothing (default: 5 bars). Because the raw RS Score takes only 7 discrete values (rank-derived), a small amount of smoothing turns step-function jumps into readable curves while preserving the cross-sectional comparability.
• Lines above 83 = sector is currently in top 2 by RS
• Lines below 17 = sector is currently in bottom 2 by RS
• Lines crossing through the middle band = active rotation in or out
• Multiple lines bunched together = no clear sector leadership
Smoothing length is user-adjustable. Set to 1 for raw stepped lines.
▸ INPUT SETTINGS
Calculation:
• Calculation Timeframe — default Daily, locked regardless of chart TF
• Short / Medium / Long Window — three momentum lookbacks (default 7, 14, 30 bars)
• Three weight inputs to blend the windows (default 40 / 35 / 25 %)
Display:
• Toggle the dashboard table
• Choose table position and size
• Toggle the memecoin row highlight
• Toggle the RS score lines
• Adjust line smoothing (EMA length)
Colors — all six dashboard color states are individually configurable.
▸ BUILT-IN ALERTS
The script defines 17 alert conditions, available through PulseWire's standard Add Alert dialog:
Per-sector surges (rank improved by 2+ over 3 bars):
• 🚀 MEME surged
• Ξ Ethereum surged
• 🏛 RWA surged
• 🤖 AI surged
• ◎ Solana surged
• 🏢 Exchange surged
• 🏦 DeFi surged
Per-sector drops (rank declined by 2+ over 3 bars):
• same 7 sectors, mirrored
Memecoin-specific:
• 🔥 MEMES entered Top 2
• ❄️ MEMES dropped to Bottom 2
Regime:
• ⚠️ Risk-Off Regime — defensives leading, risk-on lagging
▸ HOW TO USE IT
The script pulls all of its data from CRYPTOCAP indices via request.security, so the chart symbol does not affect the calculation. Putting it on CRYPTOCAP:TOTAL on the Daily timeframe gives the cleanest macro context, but the radar will work identically on any chart.
Default timeframe is Daily, which is appropriate for sector-rotation analysis. Higher-timeframe rotations are typically slower-moving signals; lower timeframes will produce noisier rankings.
▸ LIMITATIONS AND HONEST CAVEATS
• This is a contextual / regime tool, not a predictive one. The radar tells you the current state of cross-sector capital flow. It does not predict which sector will lead next.
• Rank is a relative measure. A sector at rank #1 with weak absolute momentum is still rank #1 — but the broader market may be in a downtrend. Pair this with absolute price/cap context.
• When two or more sectors have very similar momentum, ranks can flip frequently. The Δ3D and Δ7D columns help filter noise from real rotation.
• Sector definitions follow PulseWire's CRYPTOCAP indices, which themselves are subject to PulseWire's classification logic. If a token is reclassified, all sectors will reflect that change.
• RS Score is derived from rank, so it can only take 7 discrete values (0, 16.7, 33.3, 50, 66.7, 83.3, 100). The smoothing on the plotted lines is purely cosmetic; the table values are exact.
▸ TECHNICAL NOTES
• Pine Script v6
• Open-source under the Mozilla Public License 2.0
• Uses 8 request.security calls (well below the 40-call limit), all to official CRYPTOCAP indices
• No repainting — all calculations use confirmed bar close values from the requested timeframe
• Designed to coexist with other indicators on the same chart
▸ DISCLAIMER
For educational and informational purposes only. This script is a market analysis tool, not financial advice. Nothing here constitutes a recommendation to buy or sell any asset. Past behavior of the radar in historical data is not a guarantee of future behavior. Cryptocurrency markets are highly volatile and can result in substantial losses. Always do your own research and trade with risk you can afford to lose.
Indicator

Meme Season Score | Memecoin Cycle Timing
One number, 0 to 100, that answers a single question: is it meme season right now?
The Meme Season Score is a composite oscillator that condenses six different memecoin-cycle factors into one decision-relevant signal. Instead of staring at half a dozen separate dominance and market-cap charts trying to interpret what the data is saying together, you get a single weighted reading and a climate label.
▸ WHY THIS INDICATOR EXISTS
Existing memecoin tools on PulseWire each do one narrow thing: one plots a meme dominance ratio, one shows Z-scores of individual coins, one is an EMA crossover on a single sector index. None of them blend multiple cycle factors into a single comparable score.
Generic "altseason indices" treat all alts as a homogeneous block — they cannot tell you whether memecoins specifically are leading or lagging the broader alt rotation. Memecoins behave differently from L1s, DeFi, or RWAs. They need their own framework.
This script is that framework: six factors, all relevant to memecoin cycle behavior, all weighted by their historical importance, all blended into one number you can act on.
▸ METHODOLOGY
Each of the six input factors is first converted to a rate-of-change over a rolling momentum window (default: 14 bars). That ROC is then converted to a percentile rank within a longer normalization window (default: 180 bars), giving a 0–100 score that reflects "where does today's reading sit within the recent distribution."
Inverse factors (where falling values are bullish for memes) have their percentile rank flipped before contributing to the composite.
The six factors and default weights:
• MEME.D trend — 25% — meme sector dominance rising = bullish
• MEME.C momentum — 20% — meme sector market cap accelerating = bullish
• BTC.D inverse — 20% — BTC dominance falling = capital rotating to alts
• OTHERS.D trend — 15% — altcoin dominance rising = risk-on environment
• STABLE.C inverse — 10% — stablecoin cap declining = stables being deployed
• MEME.C/TOTAL acceleration — 10% — meme share growing faster than market
All weights are user-adjustable in the inputs and are auto-normalized, so they don't have to sum to 100.
Note: MEME.D is not currently a native CRYPTOCAP ticker on PulseWire, so it is derived as MEME.C / TOTAL × 100 inside the script.
▸ CLIMATE ZONES
The score is divided into five regimes, each with its own color and emoji label that appears on the chart:
• 0–20 ❄️ Meme Winter Capital fleeing memes (deep accumulation zone)
• 20–40 🌧️ Cool Mixed signals — selective plays only
• 40–60 ☀️ Warming Up Rotation beginning — early meme season
• 60–80 🔥 Meme Season Active Broad memecoin pumps — high conviction window
• 80–100 🚀 Peak Mania Extreme readings — historically precedes retracements
The main score line shifts color as it crosses zone boundaries. Background of the pane tints faintly with the current zone color (toggleable). A label on the last bar shows the live score and zone name.
▸ HOW TO READ IT
• Score above its 50-period EMA = momentum is strengthening
• Score below its 50-period EMA = momentum is weakening
• Cross above 60 = season conditions activating
• Cross above 80 = extreme conditions, historical risk zone
• Cross below 40 = season cooling off
• Cross below 20 = winter conditions, sentiment capitulation
The 50-EMA line is the slower trend reference; the colored line is the live signal. Watching their relationship is often more useful than watching either one alone.
▸ HOW TO USE IT
The script pulls all of its data from CRYPTOCAP indices via request.security, so the chart symbol does not affect the calculation. Putting it on CRYPTOCAP:MEME.C on the Daily timeframe gives the cleanest visual context (price chart of the meme sector above, score sub-pane below) but you can use any chart.
The default calculation timeframe is Daily, which is appropriate for cycle-level analysis. The score will show the same Daily-derived value regardless of what chart timeframe you are viewing.
▸ INPUT SETTINGS
Calculation Settings:
• Calculation Timeframe (default: Daily)
• Momentum Lookback in bars (default: 14)
• Normalization Lookback in bars (default: 180)
• Score Smoothing EMA (default: 3 — set to 1 for raw unsmoothed score)
Factor Weights — all six factor weights are individually adjustable from 0 to 100. Weights are auto-normalized so any combination is valid.
Display Options:
• Toggle the 50-period EMA of the score
• Toggle the floating score label
• Toggle the background climate tint
• Label size (small / normal / large / huge — use huge for screenshots)
▸ BUILT-IN ALERTS
Four alert conditions are defined and can be activated through the standard Add Alert dialog:
• 🔥 Meme Season Starting (score crosses above 60)
• 🚀 Peak Mania Warning (score crosses above 80)
• ☁️ Meme Season Ending (score crosses below 40)
• ❄️ Meme Winter (score crosses below 20)
▸ LIMITATIONS AND HONEST CAVEATS
• This is a contextual/regime tool, not a predictive one. The score tells you the current state of the meme cycle based on factors that have historically mattered. It does not predict future prices or guarantee any outcome.
• Percentile rank is by definition backward-looking. The score reflects how today's momentum compares to the recent past, not where prices are going.
• With default settings, the script needs roughly 194 daily bars of valid CRYPTOCAP data to warm up before producing a meaningful score (14-bar ROC plus 180-bar percentile window). MEME.C history begins in early 2024, so this is not a constraint for current charts.
• Memecoin market structure changes quickly. Tokens that drove the sector last cycle may be irrelevant in the next. The score works at the sector level and is robust to individual token churn, but it cannot tell you which specific memecoin to buy.
• Factor weights are calibrated to behavior observed in available CRYPTOCAP history. If the underlying market structure shifts substantially, weights may need adjustment.
▸ TECHNICAL NOTES
• Pine Script v6
• Open-source under the Mozilla Public License 2.0
• Uses 5 request.security calls (well below the 40-call limit), all to official CRYPTOCAP indices
• No repainting — all calculations use confirmed bar close values from the requested timeframe
▸ DISCLAIMER
For educational and informational purposes only. This script is a market analysis tool, not financial advice. Nothing here constitutes a recommendation to buy or sell any asset. Past behavior of the score in historical data is not a guarantee of future behavior. Cryptocurrency markets, and memecoin markets in particular, are highly volatile and can result in substantial losses. Always do your own research and trade with risk you can afford to lose.
Indicator

SMC Pro BTC - ICT Order Blocks & FVG [DOE]SMC Pro BTC - ICT Order Blocks & FVG
A multi-timeframe Smart Money Concepts engine built exclusively for Bitcoin. This indicator combines order blocks, fair value gaps, liquidity sweeps, break of structure, and premium/discount zone analysis into one backtest-verified, non-repainting strategy.
Every signal you see in history is exactly what you would have seen live. No repainting. No lookahead. No curve-fitting.
Built by a former quantitative analyst from a US-based systematic fund. The structural logic behind this indicator is the same order flow mechanics that institutional algorithms use to identify and exploit liquidity imbalances — adapted for retail traders on PulseWire.
TWO STRATEGY MODES
The indicator offers two execution modes on the same structural foundation. Both include commissions (0.075% per trade) and slippage (3 ticks) in all backtested results.
AGGRESSIVE MODE — More trades, more exposure
Entries fire on any valid BOS or CHoCH confirmed by an order block and fair value gap on the confirmation timeframe. Accepts a lower win rate in exchange for capturing a larger portion of trending moves.
Metric Value
Period Jan 2021 — Feb 2026 (5 years)
Total Trades 90
Win Rate 45.56%
Net P&L +14.36%
Profit Factor 1.95
Max Drawdown 1.36%
90 trades across 5 full years — including the 2022 bear market. A profit factor of 1.95 means that for every dollar lost, the system recovered nearly two. The 45% win rate works because winning trades are structurally larger than losers. This is positive expectancy executed over a statistically meaningful sample.
SELECTIVE MODE — Fewer trades, higher precision
Adds a premium/discount zone filter. Longs only in the discount zone of the HTF dealing range. Shorts only in the premium zone. This single structural filter cuts the trade count significantly while improving signal quality.
Metric Value
Period Jan 2021 — Feb 2026 (5 years)
Total Trades 29
Win Rate 51.72%
Net P&L +1.10%
Profit Factor 1.324
Max Drawdown 1.23%
The Selective mode sacrifices P&L for risk control — the maximum drawdown over 5 years was just 1.23%. The lower trade count (29) reflects the strict filtering: every signal requires structural confluence plus optimal price positioning. This mode is designed for traders who prioritize capital preservation over returns.
Both modes are provided so you can evaluate the tradeoff between frequency and precision. There is no objectively "better" mode — only the one that matches your risk tolerance.
Note on sample size: The Aggressive mode produces 90 trades over the 5-year test period, approaching the 100-trade benchmark for statistical significance. The Selective mode produces 29 trades due to the strict confluence requirements — each trade requires alignment across 6 independent conditions (BOS, OB, FVG, liquidity sweep, premium/discount zone). We recommend supplementing the backtest with forward-testing on live data for additional confidence. The Strategy Tester is fully available for you to verify all results with your own settings.
ENTRY LOGIC — STEP BY STEP
Every signal requires alignment across structure, zone, imbalance, and liquidity. No single condition is sufficient.
LONG ENTRY SEQUENCE
Step 1 — HTF Directional Bias
The Direction Timeframe (default: 4H) detects a bullish break of structure or change of character. This establishes the higher-timeframe directional bias. Without bullish structure on the HTF, no long signal fires.
Step 2 — MTF Confirmation
The Confirmation Timeframe (default: 1H) must confirm with its own bullish BOS or CHoCH, aligning both timeframes in the same direction.
Step 3 — Order Block Identification
The script finds the last bearish candle before the impulsive bullish move — the order block where smart money accumulated positions.
Step 4 — Fair Value Gap Validation
A bullish FVG must overlap the identified order block zone. An OB alone is a level. An OB combined with an FVG is confluence.
Step 5 — Liquidity Sweep Confirmation
A recent liquidity sweep must have occurred — price dipped below a prior swing low, triggering stop-losses, before reversing.
Step 6 — Premium/Discount Zone Filter (Selective Mode Only)
Entry must occur in the discount zone of the HTF dealing range.
Step 7 — Execution
All conditions met. Signal fires. Stop-loss below the order block. Take-profit at the configured R:R distance.
SHORT ENTRY SEQUENCE
Mirrors the long with inverted conditions:
HTF bearish BOS/CHoCH
MTF bearish BOS/CHoCH confirms
Bearish order block identified
Bearish FVG overlaps the OB zone
Liquidity sweep above a prior swing high
Price in premium zone (Selective only)
SL above OB high + buffer; TP at R:R below entry
Every step is objective. No discretionary component.
FEATURES
Non-repainting, non-lookahead signals — barstate.isconfirmed enforced on all calculations
Multi-timeframe structure analysis — HTF for direction, MTF for confirmation, entry TF for execution
Order block detection with configurable lookback and automatic invalidation
Fair value gap multi-zone display — configurable by count and max distance from price
Liquidity sweep recognition with adjustable memory window
BOS and CHoCH detection on multiple timeframes
Premium/discount zone mapping with configurable threshold
Automatic SL/TP with visual trade boxes
Two strategy modes — Aggressive and Selective
Fully configurable parameters with sensible BTC 4H defaults
Built-in strategy engine — backtest directly in Strategy Tester
DEFAULT STRATEGY PROPERTIES
These are the exact settings used for the published backtest. You can verify all results by loading the indicator with default settings and opening the Strategy Tester:
Symbol: BTCUSDT (Binance)
Timeframe: 4H
Period: January 2021 — February 2026 (5+ years)
Initial Capital: $10,000
Order Size: 10% of equity per trade
Commission: 0.075% per trade (Binance taker fee)
Slippage: 3 ticks per order
Pyramiding: 0 (one position at a time)
Non-repainting: barstate.isconfirmed enforced
No lookahead bias: lookahead = barmerge.lookahead_off on all request.security() calls
No future leakage: entries execute on the bar after all conditions are confirmed
The 10% equity sizing means each trade risks a sustainable portion of the account. This is consistent with professional risk management standards where no single trade should expose more than 5-10% of capital.
SETTINGS DOCUMENTATION
Strategy Mode — Aggressive / Selective
Aggressive: BOS/CHoCH + Order Block + FVG + Liquidity Sweep. Selective adds premium/discount zone filter. New to SMC? Start with Selective.
Direction TF (HTF) — Default: 240 (4H)
Higher timeframe for directional bias. Increase to Daily for fewer, higher-conviction signals.
Confirmation TF (MTF) — Default: 60 (1H)
Mid timeframe that confirms HTF bias. Default 240/60 provides a 4:1 ratio.
Swing Length — Default: 10 | Range: 3-50
Bars used to identify swing highs/lows. Lower = more sensitive, higher = major shifts only.
OB Lookback Bars — Default: 15 | Range: 3-30
How far back to search for valid order blocks after a structural break.
Sweep Memory — Default: 20 bars | Range: 5-50
Lookback window for detecting liquidity sweeps before entries.
Risk:Reward Ratio — Default: 2.0 | Range: 1.0-5.0
TP placement relative to SL distance. Re-run backtest after changing.
SL Buffer % — Default: 0.3 | Range: 0.0-2.0
Buffer beyond OB boundary to prevent wick stop-outs.
P/D Zone Threshold — Default: 0.80 | Range: 0.50-0.85 | Selective Only
How deep into premium/discount zone for entry qualification.
Max FVGs per Side — Default: 5 | Range: 1-10
Active FVGs displayed per direction.
FVG Max Distance % — Default: 8.0 | Range: 1.0-25.0
Hides FVGs beyond this % from current price.
Show Trade Boxes — On / Off
Visual boxes showing entry, SL, and TP for each signal.
CONCEPTS EXPLAINED
Order Blocks (OB) — The last opposing candle before a significant impulsive move. Where institutional participants positioned themselves. The foundation of SMC entry models.
Fair Value Gap (FVG) — A three-candle price imbalance where the market moved too fast for orders to fill. Markets tend to return to these inefficiencies. When an FVG overlaps an OB, that is high-probability confluence.
Break of Structure (BOS) — Price moves beyond a prior swing high/low in the trend direction. Signals continuation.
Change of Character (CHoCH) — A structural break against the prevailing trend. The first objective signal of a potential reversal.
Liquidity Sweep — Price pushes beyond a key level to trigger stop-losses, then reverses. Institutional participants hunting clustered orders for liquidity.
Premium and Discount Zones — The HTF range divided by the 50% equilibrium. Premium = expensive (favor shorts). Discount = cheap (favor longs).
HOW TO USE
Add to any BTCUSDT chart (optimized for 4H Binance)
Select Aggressive or Selective mode in Settings
Green arrows = long entries, red arrows = short entries, with SL/TP lines
Enable Show Trade Boxes for visual risk/reward on every signal
Open Strategy Tester to verify all backtest results with your own settings
Adjust one setting at a time and re-run the backtest after each change
Combine with your own analysis — this is a structural tool, not a prediction engine
Manage risk — no indicator guarantees profits
CREDITS
This script builds upon concepts and structural approaches from the following open-source projects:
LuxAlgo — SMC structural detection framework
ICT Master Suite — ICT concepts implementation reference
PineScript-SMC-Strategy — SMC strategy architecture reference
Significant modifications and original work include: dual-mode strategy engine (Aggressive/Selective), multi-timeframe confluence model requiring 5-6 simultaneous conditions, FVG multi-zone display with distance filtering, integrated backtest engine with realistic position sizing, and complete strategy automation with configurable risk management.
DISCLAIMER
This indicator is published for educational and informational purposes only. It is not financial advice, investment advice, or a recommendation to buy or sell any asset. Trading Bitcoin involves substantial risk of loss. Never trade capital you cannot afford to lose. Past performance does not guarantee future results. You are solely responsible for your own trading decisions. Use at your own risk. Strategy

The Abramelin Protocol [MPL]"Any sufficiently advanced technology is indistinguishable from magic." — Arthur C. Clarke
🌑 SYSTEM OVERVIEW
The Abramelin Protocol is not a standard technical indicator; it is a "Technomantic" trading algorithm engineered to bridge the gap between 15th-century esoteric mathematics and modern high-frequency markets.
This script is the flagship implementation of the MPL (Magic Programming Language) project—an open-source experimental framework designed to compile metaphysical intent into executable Python and Pine Script algorithms.
Unlike traditional indicators that rely on arbitrary constants (like the 14-period RSI or 200 SMA), this protocol calculates its parameters using "Dynamic Entity Gematria." We utilize a custom Python backend to analyze the ASCII vibrational frequencies of specific metaphysical archetypes, reducing them via Tesla's 3-6-9 harmonic principles to derive market-responsive periods.
🧬 WHAT IS ?
MPL (Magic Programming Language) is a domain-specific language and research initiative created to explore Technomancy—the art of treating code as a spellbook and the market as a chaotic entity to be tamed.
By integrating the logic of ancient Grimoires (such as The Book of Abramelin) with modern Data Science, MPL aims to discover hidden correlations in price action that standard tools overlook.
🔗 CONNECT WITH THE PROJECT:
If you are a developer, a trader, or a seeker of hidden knowledge, examine the source code and join the order:
• 📂 Official Project Site: hakanovski.github.io
• 🐍 MPL Source Code (GitHub): github.com
• 👨💻 Developer Profile (LinkedIn): www.linkedin.com
🔢 THE ALGORITHM: 452 - 204 - 50
The inputs for this script are mathematically derived signatures of the intelligence governing the system:
1. THE PAIMON TREND (Gravity)
• Origin: Derived from the ASCII summation of the archetype PAIMON (King of Secret Knowledge).
• Function: This 452-period Baseline acts as the market's "Event Horizon." It represents the deep, structural direction of the asset.
• Price > Line: Bullish Domain.
• Price < Line: Bearish Void.
2. THE ASTAROTH SIGNAL (Trigger)
• Origin: Derived from the ASCII summation of ASTAROTH (Knower of Past & Future), reduced by Tesla’s 3rd Harmonic.
• Function: This is the active trigger line. It replaces standard moving averages with a precise, gematria-aligned trajectory.
3. THE VOLATILITY MATRIX (Scalp)
• Origin: Based on the 9th Harmonic reduction.
• Function: Creates a "Cloud" around the signal line to visualize market noise.
🛡️ THE MILON GATE (Matrix Filter)
Unique to this script is the "MILON Gate" toggle found in the settings.
• ☑️ Active (Default): The algorithm applies the logic of the MILON Magic Square. Signals are ONLY generated if Volume and Volatility align with the geometric structure of the move. This filters out ~80% of false signals (noise).
• ⬜ Inactive: The algorithm operates in "Raw Mode," showing every mathematical crossover without the volume filter.
⚠️ OPERATIONAL USAGE
• Timeframe: Optimized for 4H (The Builder) and Daily (The Architect) charts.
• Strategy: Use the Black/Grey Line (452) as your directional bias. Take entries only when the "EXECUTE" (Long) or "PURGE" (Short) sigils appear.
Use this tool wisely. Risk responsibly. Let the harmonics guide your entries.
— Hakan Yorganci
Technomancer & Full Stack Developer Indicator

The Oracle: Dip & Top Adaptive Sniper [Hakan Yorganci]█ OVERVIEW
The Oracle: Dip & Top Adaptive Sniper is a precision-focused trend trading strategy designed to solve the biggest problem in swing trading: Timing.
Most trend-following strategies chase price ("FOMO"), buying when the asset is already overextended. The Oracle takes a different approach. It adopts a "Sniper" mentality: it identifies a strong macro trend but patiently waits for a Mean Reversion (pullback) to execute an entry at a discounted price.
By combining the structural strength of Moving Averages (SMA 50/200) with the momentum precision of RSI and the volatility filtering of ADX, this script filters out noise and targets high-probability setups.
█ HOW IT WORKS
This strategy operates on a strictly algorithmic protocol known as "The Yorganci Protocol," which involves three distinct phases: Filter, Target, and Execute.
1. The Macro Filter (Trend Identification)
* SMA 200 Rule: By default, the strategy only scans for buy signals when the price is trading above the 200-period Simple Moving Average. This ensures we are always trading in the direction of the long-term bull market.
* Adaptive Switch: A new feature allows users to toggle the Only Buy Above SMA 200? filter OFF. This enables the strategy to hunt for oversold bounces (dead cat bounces) even during bearish or neutral market structures.
2. The Volatility Filter (ADX Integration)
* Sideways Protection: One of the main weaknesses of moving average strategies is "whipsaw" losses during choppy, ranging markets.
* Solution: The Oracle utilizes the ADX (Average Directional Index). It will BLOCK any trade entry if the ADX is below the threshold (Default: 20). This ensures capital is only deployed when a genuine trend is present.
3. The Sniper Entry (Buying the Dip)
* Instead of buying on breakout strength (e.g., RSI > 60), The Oracle waits for the RSI Moving Average to dip into the "Value Zone" (Default: 45) and cross back up. This technique allows for tighter stops and higher Risk/Reward ratios compared to traditional breakout systems.
█ EXIT STRATEGY
The Oracle employs a dynamic dual-exit mechanism to maximize gains and protect capital:
* Take Profit (The Peak): The strategy monitors RSI heat. When the RSI Moving Average breaches the Overbought Threshold (Default: 75), it signals a "Take Profit", securing gains near the local top before a potential reversal.
* Stop Loss (Trend Invalidated): If the market structure fails and the price closes below the 50-period SMA, the position is immediately closed to prevent deep drawdowns.
█ SETTINGS & CONFIGURATION
* Moving Averages: Fully customizable lengths for Support (SMA 50) and Trend (SMA 200).
* Trend Filter: Checkbox to enable/disable the "Bull Market Only" rule.
* RSI Thresholds:
* Sniper Buy Level: Adjustable (Default: 45). Lower values = Deeper dips, fewer trades.
* Peak Sell Level: Adjustable (Default: 75). Higher values = Longer holds, potentially higher profit.
* ADX Filter: Checkbox to enable/disable volatility filtering.
█ BEST PRACTICES
* Timeframe: Designed primarily for 4H (4-Hour) charts for swing trading. It can also be used on 1H for more frequent signals.
* Assets: Highly effective on trending assets such as Bitcoin (BTC), Ethereum (ETH), and high-volume Altcoins.
* Risk Warning: This strategy is designed for "Long Only" spot or leverage trading. Always use proper risk management.
█ CREDITS
* Original Concept: Inspired by the foundational work of Murat Besiroglu (@muratkbesiroglu).
* Algorithm Development & Enhancements: Developed by Hakan Yorganci (@hknyrgnc).
* Modifications include: Integration of ADX filters, Mean Reversion entry logic (RSI Dip), and Dynamic Peak Profit taking. Strategy

Indicator

Puell Multiple Variants [OperationHeadLessChicken]Overview
This script contains three different, but related indicators to visualise Bitcoin miner revenue.
The classical Puell Multiple : historically, it has been good at signaling Bitcoin cycle tops and bottoms, but due to the diminishing rewards miners get after each halving, it is not clear how you determine overvalued and undervalued territories on it. Here is how the other two modified versions come into play:
Halving-Corrected Puell Multiple : The idea is to multiply the miner revenue after each halving with a correction factor, so overvalued levels are made comparable by a horizontal line across cycles. After experimentation, this correction factor turned out to be around 1.63. This brings cycle tops close to each other, but we lose the ability to see undervalued territories as a horizontal region. The third variant aims to fix this:
Miner Revenue Relative Strength Index (Miner Revenue RSI) : It uses RSI to map miner revenue into the 0-100 range, making it easy to visualise over/undervalued territories. With correct parameter settings, it eliminates the diminishing nature of the original Puell Multiple, and shows both over- and undervalued revenues correctly.
Example usage
The goal is to determine cycle tops and bottoms. I recommend using it on high timeframes, like monthly or weekly . Lower than that, you will see a lot of noise, but it could still be used. Here I use monthly as the example.
The classical Puell Multiple is included for reference. It is calculated as Miner Revenue divided by the 365-day Moving Average of the Miner Revenue . As you can see in the picture below, it has been good at signaling tops at 1,3,5,7.
The problems:
- I have to switch the Puell Multiple to a logarithmic scale
- Still, I cannot use a horizontal oversold territory
- 5 didn't touch the trendline, despite being a cycle top
- 9 touched the trendline despite not being a cycle top
Halving-Corrected Puell Multiple (yellow): Multiplies the Puell Multiple by 1.63 (a number determined via experimentation) after each halving. In the picture below, you can see how the Classical (white) and Corrected (yellow) Puell Multiples compare:
Advantages:
- Now you can set a constant overvalued level (12.49 in my case)
- 1,3,7 are signaled correctly as cycle tops
- 9 is correctly not signaled as a cycle top
Caveats:
- Now you don't have bottom signals anymore
- 5 is still not signaled as cycle top
Let's see if we can further improve this:
Miner Revenue RSI (blue):
On the monthly, you can see that an RSI period of 6, an overvalued threshold of 90, and an undervalued threshold of 35 have given historically pretty good signals.
Advantages:
- Uses two simple and clear horizontal levels for undervalued and overvalued levels
- Signaling 1,3,5,7 correctly as cycle tops
- Correctly does not signal 9 as a cycle top
- Signaling 4,6,8 correctly as cycle bottoms
Caveats:
- Misses two as a cycle bottom, although it was a long time ago when the Bitcoin market was much less mature
- In the past, gave some early overvalued signals
Usage
Using the example above, you can apply these indicators to any timeframe you like and tweak their parameters to obtain signals for overvalued/undervalued BTC prices
You can show or hide any of the three indicators individually
Set overvalued/undervalued thresholds for each => the background will highlight in green (undervalued) or red (overvalued)
Set special parameters for the given indicators: correction factor for the Corrected Puell and RSI period for Revenue RSI
Show or hide halving events on the indicator panel
All parameters and colours are adjustable
Indicator

Indicator

Bitcoin Halving Strategy
A systematic, data-driven trading strategy based on Bitcoin's 4-year halving cycles. This strategy capitalizes on historical price patterns that emerge around halving events, providing clear entry and exit signals for both accumulation and profit-taking phases.
🎯 Strategy Overview
This automated trading system identifies optimal buy and sell zones based on the predictable Bitcoin halving cycle that occurs approximately every 4 years. By analyzing historical data from all previous halvings (2012, 2016, 2020, 2024), the strategy pinpoints high-probability trading opportunities.
📊 Key Features
Automated Signal Generation: Buy signals at halving events and DCA zones, sell signals at profit-taking peaks
Multi-Phase Analysis: Tracks Accumulation, Profit Taking, Bear Market, and DCA phases
Visual Dashboard: Real-time performance metrics, phase countdown, and position tracking
Backtesting Enabled: Comprehensive historical performance analysis with configurable parameters
Risk Management: Built-in position sizing, slippage control, and optional short trading
⚙️ Strategy Logic
Buy Signals:
At halving event (Week 0)
DCA zone entry (Week 135 post-halving)
Sell Signals:
Profit-taking zone (Week 80 post-halving)
Optional short position entry for advanced traders
📈 Performance Highlights
Captures major bull run profits while avoiding prolonged bear markets
Clear visual indicators for all phases and transitions
Customizable timing parameters for personalized risk tolerance
Professional dashboard with live P&L, win rate, and drawdown metrics
🛠️ Customization Options
Adjustable phase timing (profit start/end, DCA timing)
Position sizing control
Enable/disable short trading
Visual customization (colors, labels, zones)
Table positioning and transparency
⚠️ Risk Disclosure
Past performance does not guarantee future results. This strategy is based on historical halving cycle patterns and should be used as part of a comprehensive trading plan. Always conduct your own research and consider your risk tolerance before trading.
💡 Ideal For
Long-term Bitcoin investors seeking systematic entry/exit points
Swing traders capitalizing on multi-month trends
Portfolio managers implementing cycle-based allocation strategies Strategy

MVRV Ratio [Alpha Extract]The MVRV Ratio Indicator provides valuable insights into Bitcoin market cycles by tracking the relationship between market value and realized value. This powerful on-chain metric helps traders identify potential market tops and bottoms, offering clear buy and sell signals based on historical patterns of Bitcoin valuation.
🔶 CALCULATION The indicator processes MVRV ratio data through several analytical methods:
Raw MVRV Data: Collects MVRV data directly from INTOTHEBLOCK for Bitcoin
Optional Smoothing: Applies simple moving average (SMA) to reduce noise
Status Classification: Categorizes market conditions into four distinct states
Signal Generation: Produces trading signals based on MVRV thresholds
Price Estimation: Calculates estimated realized price (Current price / MVRV ratio)
Historical Context: Compares current values to historical extremes
Formula:
MVRV Ratio = Market Value / Realized Value
Smoothed MVRV = SMA(MVRV Ratio, Smoothing Length)
Estimated Realized Price = Current Price / MVRV Ratio
Distance to Top = ((3.5 / MVRV Ratio) - 1) * 100
Distance to Bottom = ((MVRV Ratio / 0.8) - 1) * 100
🔶 DETAILS Visual Features:
MVRV Plot: Color-coded line showing current MVRV value (red for overvalued, orange for moderately overvalued, blue for fair value, teal for undervalued)
Reference Levels: Horizontal lines indicating key MVRV thresholds (3.5, 2.5, 1.0, 0.8)
Zone Highlighting: Background color changes to highlight extreme market conditions (red for potentially overvalued, blue for potentially undervalued)
Information Table: Comprehensive dashboard showing current MVRV value, market status, trading signal, price information, and historical context
Interpretation:
MVRV ≥ 3.5: Potential market top, strong sell signal
MVRV ≥ 2.5: Overvalued market, consider selling
MVRV 1.5-2.5: Neutral market conditions
MVRV 1.0-1.5: Fair value, consider buying
MVRV < 1.0: Potential market bottom, strong buy signal
🔶 EXAMPLES
Market Top Identification: When MVRV ratio exceeds 3.5, the indicator signals potential market tops, highlighting periods where Bitcoin may be significantly overvalued.
Example: During bull market peaks, MVRV exceeding 3.5 has historically preceded major corrections, helping traders time their exits.
Bottom Detection: MVRV values below 1.0, especially approaching 0.8, have historically marked excellent buying opportunities.
Example: During bear market bottoms, MVRV falling below 1.0 has identified the most profitable entry points for long-term Bitcoin accumulation.
Tracking Market Cycles: The indicator provides a clear visualization of Bitcoin's market cycles from undervalued to overvalued states.
Example: Following the progression of MVRV from below 1.0 through fair value and eventually to overvalued territory helps traders position themselves appropriately throughout Bitcoin's market cycle.
Realized Price Support: The estimated realized price often acts as a significant
support/resistance level during market transitions.
Example: During corrections, price often finds support near the realized price level calculated by the indicator, providing potential entry points.
🔶 SETTINGS
Customization Options:
Smoothing: Toggle smoothing option and adjust smoothing length (1-50)
Table Display: Show/hide the information table
Table Position: Choose between top right, top left, bottom right, or bottom left positions
Visual Elements: All plots, lines, and background highlights can be customized for color and style
The MVRV Ratio Indicator provides traders with a powerful on-chain metric to identify potential market tops and bottoms in Bitcoin. By tracking the relationship between market value and realized value, this indicator helps identify periods of overvaluation and undervaluation, offering clear buy and sell signals based on historical patterns. The comprehensive information table delivers valuable context about current market conditions, helping traders make more informed decisions about market positioning throughout Bitcoin's cyclical patterns.
Indicator

Long-Term VWAP Mean Reversion SDCACore Idea:
This indicator is designed to support Strategic Dollar Cost Averaging (SDCA) for Bitcoin using a cumulative VWAP-based mean reversion model. It helps long-term investors identify high-conviction buy zones and overbought conditions using statistical deviation from the cumulative VWAP. This indicator evaluates how much price is stretched from the true market average price, weighted by cumulative volume over time.
Core Concepts and Formulas:
Cumulative VWAP (Volume Weighted Average Price):
VWAP cumulative = ∑(Price×Volume) / ∑Volume
A long-term anchor that reflects the average dollar cost of all market participants across all candles. This version does not reset daily, unlike intraday VWAP.
VWAP Deviation % :
Deviation% = Price - VWAP cumulative / VWAP cumulative x 100
Shows how far current price has diverged from the long-term fair value.
Z-Score of VWAP Deviation:
Z= (Price−VWAP)−μ / σ (lookback period: default 200)
SDCA Multiplier Mapping:
*Keep in mind in my Z-Score system, -2 represents the overbought level (white horizontal line) and +2 represents oversold (cyan horizontal line) conditions. So the scores on the Y axis and Z-score in the table are reversed.
| Z-Score Range | SDCA Multiplier |
---------------------------------------------
| ≤ -2 | 0.25×
| -1 to +1 | 1.0×
| > +2 | 2.0×
The pink line plots this multiplier. It’s meant to control buy weight at each time step.
How to Use This for SDCA:
-Buy normally when the multiplier is 1.0× (Z-score between -1 and +1)
-Accelerate buying when Z-score is deeply negative (price far below VWAP)
-Slow or pause buying when Z-score is high (price far above VWAP)
-Use the stats panel to track current Z-score, VWAP level, deviation %, and multiplier
-Watch the red/blue backgrounds as visual confirmation of oversold/overbought zones
Inputs:
Z-Score Lookback Length:
Default: 200 but can be adjusted.
Visuals:
Z-Score Line (cyan): shows current standardized deviation from VWAP
Multiplier Line (bright pink): your SDCA intensity signal
Background Zones: cyan = oversold, white = overbought
Horizontal Lines: +2 and -2 standard deviation thresholds
Stats Panel (bottom right): live values for Z-score, multiplier, price, VWAP, and the deviation formula
Suited For:
-Long-term Bitcoin investors
-SDCA Systems
-Mean reversion systems
-Macro-level buy/sell planning
Indicator

Indicator

Indicator

BTC Price-Volume Efficiency Z-Score (PVER-Z)Overview:
This PVER-Z Score measures Bitcoin’s price movement efficiency relative to trading volume, normalized using a Z-Score over a long-term 200-day period.
It highlights statistically rare inefficiencies, helping investors spot extreme accumulation and distribution zones for systematic SDCA strategies.
Concept:
- Measures how efficiently price has moved relative to the volume that supported it over a long historical window (Default 200 days) but can be adjustable.
- It compares cumulative price changes vs cumulative volume flow.
- Then normalizes those inefficiencies using Z-Score statistics.
How It Works:
1. Calculates the absolute daily price change divided by volume (price-volume efficiency ratio).
2. Applies EMA smoothing to remove noisy fluctuations.
3. Normalizes the result into a Z-Score to detect statistically significant outliers.
4. Plots dynamic heatmap colors as the efficiency score moves through different deviation zones.
5. Background fills appear when the Z-Score moves beyond ±2 to ±3 SD, signaling rare macro opportunities.
Why is Bitcoin price rising while PVER-Z is falling toward green zone?
1. PVER-Z is not just "price" — it's price change relative to volume. PVER-Z measures how efficient the price movement is relative to volume. It's not "price going up" or "price going down" directly. It's how unusual or inefficient the price versus volume relationship is, compared to its historical average.
2. A rising Bitcoin price + weak efficiency = PVER-Z falls.
If Bitcoin rises but volume is super strong (normal buying volume), no problem, the PVER-Z stays normal. If Bitcoin rises but with very weak volume support, PVER-Z falls.
***Usage Notes***:
- Best used on the daily timeframe or higher.
- When the Z-Score enters the green zone (-2 to -3 SD), it signals a historically rare accumulation zone — favoring long-term buying for SDCA.
- When the Z-Score enters the red zone (+2 to +3 SD), it signals overextended distribution — caution recommended.
- Designed strictly for mean-reversion analysis, no trend-following signals.
- The red zone on a proper Z chart would be -2SD to -3SD and +2SD to +3SD for the green zone. At the time of publishing I do not know how to adjust the values on the indicator itself. The red zone at -2SD is actually +2 Standard Deviations on a Z Score SD Chart. (overbought zone).
- Your green zone at +2SD is actually -2SD Standard Deviations (oversold zone).
- Built manually with no reliance on built-in indicators
- Designed for Bitcoin on the 1D, 3D, or Weekly timeframes. NOT for intraday trading.
- DO NOT SOELY RELY ON THIS INDICATOR FOR YOUR LONG TERM VALUATION. I AM NOT RESPONSIBLE FOR YOUR FINANICAL ASSETS. Indicator

Sentiment OscillatorIn the complex world of trading, understanding market sentiment can be like reading the emotional pulse of financial markets. Our Sentiment Oscillator is designed to be your personal market mood translator, helping you navigate through the noise of price movements and market fluctuations.
Imagine having a sophisticated tool that goes beyond traditional price charts, diving deep into the underlying dynamics of market behavior. This indicator doesn't just show you numbers – it tells you a story about market sentiment, combining multiple financial signals to give you a comprehensive view of potential market directions.
The Sentiment Oscillator acts like a sophisticated emotional barometer for stocks, cryptocurrencies, or any tradable asset. It analyzes price changes, market volatility, trading volume, and long-term trends to generate a unique sentiment score. This score ranges from highly bullish to deeply bearish, providing traders with an intuitive visual representation of market mood.
Green zones indicate positive market sentiment, suggesting potential buying opportunities. Red zones signal caution, hinting at possible downward trends. The oscillator's gray neutral zone helps you identify periods of market uncertainty, allowing for more calculated trading decisions.
What sets this indicator apart is its ability to blend multiple market factors into a single, easy-to-understand indicator. It's not just about current price – it's about understanding the deeper currents moving beneath the surface of market prices.
Traders can use this oscillator to:
- Identify potential trend reversals
- Understand market sentiment beyond price movement
- Spot periods of market strength or weakness
- Complement other technical analysis tools
Whether you're a day trader, swing trader, or long-term investor, the Sentiment Oscillator provides an additional layer of insight to support your trading strategy. Remember, no indicator is a crystal ball, but this tool can help you make more informed decisions in the dynamic world of trading. Indicator

Indicator

Bitcoin Cycle High/Low with functional Alert [heswaikcrypt]Introduction
Just as machines are fine-tuned for maximum efficiency, trading indicators must evolve to meet the demands of ever-changing markets.
Credit goes to the initial author, @NoCreditsLeft I only improved the existing Pi-cycle indicator with a functional alert and included a bull mode indicator in the script. The alert can help you get a live alert at candle close when the cycle tops, bottoms, and the potential bull phase switch occurs.
Philip Swift’s Pi Cycle Top Indicator is a brilliant example of leveraging mathematical relationships to signal critical turning points in Bitcoin’s price cycles. Historically, it has identified market and local tops with some relative accuracy, often within three days, as demonstrated in all the previous bull run cycles.
At its core, the Pi Cycle Indicator derives its name from the mathematical constant π (pi), achieved by using simple moving averages (MAs) in a specific ratio: 𝜋 = Long MA/short MA
The Bull mode switch is calculated using a crossover of the short exponentia moving average and the long moving average.
.
.
.
Knowing when Bitcoin reaches its top—and receiving timely alerts about it—is crucial for successful trading. The indicator is designed to signal;
Potential Bitcoin tops: Purple label
Potential Bitcoin bottoms : green Label, and
Parabolic swing : Yellow diamond shape (relating to the market switching to a potential bull mode)
"Please note: This indicator is tailored for Bitcoin using historical data analysis and should not be considered definitive. However accurate it might be."
Setting alerts
To set the alert conditions, select any alert function call to get alert whenever the conditions are met. The script is configured on dialy TF; you can set it on 1D or weekly TF.
Enjoy and Trade smartly Indicator
