new takesi_2Step_Screener_MOU_KAKU_FIXED4 (Visible)//@version=5
indicator("MNO_2Step_Screener_MOU_KAKU_FIXED4 (Visible)", overlay=true, max_labels_count=500)
// =========================
// Inputs
// =========================
emaSLen = input.int(5, "EMA Short (5)")
emaMLen = input.int(13, "EMA Mid (13)")
emaLLen = input.int(26, "EMA Long (26)")
macdFast = input.int(12, "MACD Fast")
macdSlow = input.int(26, "MACD Slow")
macdSignal = input.int(9, "MACD Signal")
macdZeroTh = input.float(0.2, "MOU: MACD near-zero threshold", step=0.05)
volLookback = input.int(5, "Volume MA days", minval=1)
volMinRatio = input.float(1.3, "MOU: Volume ratio min", step=0.1)
volStrong = input.float(1.5, "Strong volume ratio (Breakout/KAKU)", step=0.1)
volMaxRatio = input.float(3.0, "Volume ratio max (filter)", step=0.1)
wickBodyMult = input.float(2.0, "Pinbar: lowerWick >= body*x", step=0.1)
pivotLen = input.int(20, "Resistance lookback", minval=5)
pullMinPct = input.float(5.0, "Pullback min (%)", step=0.1)
pullMaxPct = input.float(15.0, "Pullback max (%)", step=0.1)
breakLookbackBars = input.int(5, "Pullback route: valid bars after break", minval=1)
// --- Breakout route (押し目なし初動ブレイク) ---
useBreakoutRoute = input.bool(true, "Enable MOU Breakout Route (no pullback)")
breakConfirmPct = input.float(0.3, "Break confirm: close > R*(1+%)", step=0.1)
bigBodyLookback = input.int(20, "Break candle body MA length", minval=5)
bigBodyMult = input.float(1.2, "Break candle: body >= MA*mult", step=0.1)
requireCloseNearHigh = input.bool(true, "Break candle: close near high")
closeNearHighPct = input.float(25.0, "Close near high threshold (% of range)", step=1.0)
allowMACDAboveZeroInstead = input.bool(true, "Breakout route: allow MACD GC above zero instead")
// 表示
showEMA = input.bool(true, "Plot EMAs")
showMou = input.bool(true, "Show MOU label")
showKaku = input.bool(true, "Show KAKU label")
// ★ここを改善:デバッグ表はデフォルトON
showDebugTbl = input.bool(true, "Show debug table (last bar)")
// ★稼働確認ラベル(最終足に必ず出す)
showStatusLbl = input.bool(true, "Show status label (last bar always)")
locChoice = input.string("Below Bar", "Label location", options= )
lblLoc = locChoice == "Below Bar" ? location.belowbar : location.abovebar
// =========================
// EMA
// =========================
emaS = ta.ema(close, emaSLen)
emaM = ta.ema(close, emaMLen)
emaL = ta.ema(close, emaLLen)
plot(showEMA ? emaS : na, color=color.new(color.yellow, 0), title="EMA 5")
plot(showEMA ? emaM : na, color=color.new(color.blue, 0), title="EMA 13")
plot(showEMA ? emaL : na, color=color.new(color.orange, 0), title="EMA 26")
emaUpS = emaS > emaS
emaUpM = emaM > emaM
emaUpL = emaL > emaL
goldenOrder = emaS > emaM and emaM > emaL
above26_2days = close > emaL and close > emaL
// 勝率維持の土台(緩めない)
baseTrendOK = (emaUpS and emaUpM and emaUpL) and goldenOrder and above26_2days
// =========================
// MACD
// =========================
= ta.macd(close, macdFast, macdSlow, macdSignal)
macdGC = ta.crossover(macdLine, macdSig)
macdUp = macdLine > macdLine
macdNearZero = math.abs(macdLine) <= macdZeroTh
macdGCAboveZero = macdGC and macdLine > 0 and macdSig > 0
macdMouOK = macdGC and macdNearZero and macdUp
macdBreakOK = allowMACDAboveZeroInstead ? (macdMouOK or macdGCAboveZero) : macdMouOK
// =========================
// Volume
// =========================
volMA = ta.sma(volume, volLookback)
volRatio = volMA > 0 ? (volume / volMA) : na
volumeMouOK = volRatio >= volMinRatio and volRatio <= volMaxRatio
volumeStrongOK = volRatio >= volStrong and volRatio <= volMaxRatio
// =========================
// Candle patterns
// =========================
body = math.abs(close - open)
upperWick = high - math.max(open, close)
lowerWick = math.min(open, close) - low
pinbar = (lowerWick >= wickBodyMult * body) and (lowerWick > upperWick) and (close >= open)
bullEngulf =
close > open and close < open and
close >= open and open <= close
bigBull =
close > open and
open < emaM and close > emaS and
(body > ta.sma(body, 20))
candleOK = pinbar or bullEngulf or bigBull
// =========================
// Resistance / Pullback route
// =========================
res = ta.highest(high, pivotLen)
pullbackPct = res > 0 ? (res - close) / res * 100.0 : na
pullbackOK = pullbackPct >= pullMinPct and pullbackPct <= pullMaxPct
brokeRes = ta.crossover(close, res )
barsSinceBreak = ta.barssince(brokeRes)
afterBreakZone = (barsSinceBreak >= 0) and (barsSinceBreak <= breakLookbackBars)
pullbackRouteOK = afterBreakZone and pullbackOK
// =========================
// Breakout route (押し目なし初動ブレイク)
// =========================
breakConfirm = close > res * (1.0 + breakConfirmPct / 100.0)
bullBreak = close > open
bodyMA = ta.sma(body, bigBodyLookback)
bigBodyOK = bodyMA > 0 ? (body >= bodyMA * bigBodyMult) : false
rng = math.max(high - low, syminfo.mintick)
closeNearHighOK = not requireCloseNearHigh ? true : ((high - close) / rng * 100.0 <= closeNearHighPct)
mou_breakout =
useBreakoutRoute and
baseTrendOK and
breakConfirm and
bullBreak and
bigBodyOK and
closeNearHighOK and
volumeStrongOK and
macdBreakOK
mou_pullback = baseTrendOK and volumeMouOK and candleOK and macdMouOK and pullbackRouteOK
mou = mou_pullback or mou_breakout
// =========================
// KAKU (Strict): 8条件 + 最終三点
// =========================
cond1 = emaUpS and emaUpM and emaUpL
cond2 = goldenOrder
cond3 = above26_2days
cond4 = macdGCAboveZero
cond5 = volumeMouOK
cond6 = candleOK
cond7 = pullbackOK
cond8 = pullbackRouteOK
all8_strict = cond1 and cond2 and cond3 and cond4 and cond5 and cond6 and cond7 and cond8
final3 = pinbar and macdGCAboveZero and volumeStrongOK
kaku = all8_strict and final3
// =========================
// Display (猛 / 猛B / 確)
// =========================
showKakuNow = showKaku and kaku
showMouPull = showMou and mou_pullback and not kaku
showMouBrk = showMou and mou_breakout and not kaku
plotshape(showMouPull, title="MOU_PULLBACK", style=shape.labelup, text="猛",
color=color.new(color.lime, 0), textcolor=color.black, location=lblLoc, size=size.tiny)
plotshape(showMouBrk, title="MOU_BREAKOUT", style=shape.labelup, text="猛B",
color=color.new(color.lime, 0), textcolor=color.black, location=lblLoc, size=size.tiny)
plotshape(showKakuNow, title="KAKU", style=shape.labelup, text="確",
color=color.new(color.yellow, 0), textcolor=color.black, location=lblLoc, size=size.small)
// =========================
// ★稼働確認:最終足に必ず出すステータスラベル
// =========================
var label status = na
if showStatusLbl and barstate.islast
label.delete(status)
statusTxt =
"MNO RUNNING " +
"MOU: " + (mou ? "YES" : "no") + " (pull=" + (mou_pullback ? "Y" : "n") + " / brk=" + (mou_breakout ? "Y" : "n") + ") " +
"KAKU: " + (kaku ? "YES" : "no") + " " +
"BaseTrend: " + (baseTrendOK ? "OK" : "NO") + " " +
"MACD(mou): " + (macdMouOK ? "OK" : "NO") + " / MACD(zeroGC): " + (macdGCAboveZero ? "OK" : "NO") + " " +
"Vol: " + (na(volRatio) ? "na" : str.tostring(volRatio, format.mintick)) + " " +
"Pull%: " + (na(pullbackPct) ? "na" : str.tostring(pullbackPct, format.mintick))
status := label.new(bar_index, high, statusTxt, style=label.style_label_left,
textcolor=color.white, color=color.new(color.black, 0))
// =========================
// Alerts
// =========================
alertcondition(mou, title="MNO_MOU", message="MNO: MOU triggered")
alertcondition(mou_breakout, title="MNO_MOU_BREAKOUT", message="MNO: MOU Breakout triggered")
alertcondition(mou_pullback, title="MNO_MOU_PULLBACK", message="MNO: MOU Pullback triggered")
alertcondition(kaku, title="MNO_KAKU", message="MNO: KAKU triggered")
// =========================
// Debug table (optional)
// =========================
var table t = table.new(position.top_right, 2, 14, border_width=1, border_color=color.new(color.white, 60))
fRow(_name, _cond, _r) =>
bg = _cond ? color.new(color.lime, 70) : color.new(color.red, 80)
tx = _cond ? "OK" : "NO"
table.cell(t, 0, _r, _name, text_color=color.white, bgcolor=color.new(color.black, 0))
table.cell(t, 1, _r, tx, text_color=color.white, bgcolor=bg)
if showDebugTbl and barstate.islast
table.cell(t, 0, 0, "MNO Debug", text_color=color.white, bgcolor=color.new(color.black, 0))
table.cell(t, 1, 0, "", text_color=color.white, bgcolor=color.new(color.black, 0))
fRow("BaseTrend", baseTrendOK, 1)
fRow("MOU Pullback", mou_pullback, 2)
fRow("MOU Breakout", mou_breakout, 3)
fRow("Break confirm", breakConfirm, 4)
fRow("Break big body", bigBodyOK, 5)
fRow("Break close high", closeNearHighOK, 6)
fRow("Break vol strong", volumeStrongOK, 7)
fRow("Break MACD", macdBreakOK, 8)
fRow("KAKU all8", all8_strict, 9)
fRow("KAKU final3", final3, 10)
fRow("MOU any", mou, 11)
fRow("KAKU", kaku, 12)
Penunjuk dan strategi
Asian Sweep Strat by MindEdgeThe idea with the indicator is to highlight the asian range, so when price goes below or above it during frankfurt and london open overlap, we can trade price to the opposite direction
MACD X SignalsThis is a fundamental signal indicator based on MACD crossovers. It enhances the standard MACD by adding visual labels that classify signals based on their location relative to the Zero Line. This helps identify whether a trend is reversing, continuing, or potentially overextended.
Signal Legend:
B (Reversal): Bullish crossover in the Negative Zone .
B+ (Neutral): Bullish crossover in the Middle Zone .
B- (Trend): Bullish crossover in the Positive Zone
S : MACD crossing down (Bearish signal).
Squeeze Momentum OscillatorTitle: Squeeze Momentum Oscillator
Description: This indicator is a panel-based oscillator designed to visualize the relationship between market volatility and momentum. Based on the classic TTM Squeeze concept, it helps traders identify periods of consolidation ("The Squeeze") and the subsequent release of energy ("The Breakout").
Originality & Enhancements: Standard squeeze oscillators only show when a squeeze fires (turning from red to green). This enhanced version adds a specific Breakout Validation layer. It changes the center-line dot color to Fuchsia or Blue only if the squeeze release is confirmed by the slope of the 20-period Moving Average, filtering out weak or false fires.
How It Works:
1. The Center Line (Volatility State): The dots along the zero line tell you the current volatility condition:
🔴 Red Dot: Squeeze ON. Bollinger Bands are inside Keltner Channels. Volatility is compressed. The market is charging up.
🟣 Fuchsia Dot: Bullish Breakout. The squeeze has fired upward, and the underlying trend (20 SMA slope) is positive.
🔵 Blue Dot: Bearish Breakout. The squeeze has fired downward, and the underlying trend (20 SMA slope) is negative.
🟢 Green Dot: Squeeze OFF. Normal volatility conditions.
2. The Histogram (Momentum): The bars indicate the strength and direction of the price movement using Linear Regression logic:
Cyan/Green: Bullish momentum. (Darker = weakening).
Red/Maroon: Bearish momentum. (Darker = weakening).
Visual Guide:
Setup: Wait for a series of Red Dots.
Trigger: Look for the first Fuchsia (Bullish) or Blue (Bearish) dot accompanied by an expanding Histogram in the same direction.
Settings:
Feature Toggle: You can turn the "Breakout Colors" (Fuchsia/Blue) on or off if you prefer the classic look.
Sensitivity: Fully customizable lengths and multipliers for Bollinger Bands and Keltner Channels.
Credits: Based on the foundational TTM Squeeze oscillator logic. Linear regression momentum calculation adapted from standard open-source methods. Breakout validation logic added for enhanced reliability.
PatternTransitionTablesPatternTransitionTables Library
🌸 Part of GoemonYae Trading System (GYTS) 🌸
🌸 --------- 1. INTRODUCTION --------- 🌸
💮 Overview
This library provides precomputed state transition tables to enable ultra-efficient, O(1) computation of Ordinal Patterns. It is designed specifically to support high-performance indicators calculating Permutation Entropy and related complexity measures.
💮 The Problem & Solution
Calculating Permutation Entropy, as introduced by Bandt and Pompe (2002), typically requires computing ordinal patterns within a sliding window at every time step. The standard successive-pattern method (Equations 2+3 in the paper) requires ≤ 4d-1 operations per update.
Unakafova and Keller (2013) demonstrated that successive ordinal patterns "overlap" significantly. By knowing the current pattern index and the relative rank (position l) of just the single new data point, the next pattern index can be determined via a precomputed look-up table. Computing l still requires d comparisons, but the table lookup itself is O(1), eliminating the need for d multiplications and d additions. This reduces total operations from ≤ 4d-1 to ≤ 2d per update (Table 4). This library contains these precomputed tables for orders d = 2 through d = 5.
🌸 --------- 2. THEORETICAL BACKGROUND --------- 🌸
💮 Permutation Entropy
Bandt, C., & Pompe, B. (2002). Permutation entropy: A natural complexity measure for time series.
doi.org
This concept quantifies the complexity of a system by comparing the order of neighbouring values rather than their magnitudes. It is robust against noise and non-linear distortions, making it ideal for financial time series analysis.
💮 Efficient Computation
Unakafova, V. A., & Keller, K. (2013). Efficiently Measuring Complexity on the Basis of Real-World Data.
doi.org
This library implements the transition function φ_d(n, l) described in Equation 5 of the paper. It maps a current pattern index (n) and the position of the new value (l) to the successor pattern, reducing the complexity of updates to constant time O(1).
🌸 --------- 3. LIBRARY FUNCTIONALITY --------- 🌸
💮 Data Structure
The library stores transition matrices as flattened 1D integer arrays. These tables are mathematically rigorous representations of the factorial number system used to enumerate permutations.
💮 Core Function: get_successor()
This is the primary interface for the library for direct pattern updates.
• Input: The current pattern index and the rank position of the incoming price data.
• Process: Routes the request to the specific transition table for the chosen order (d=2 to d=5).
• Output: The integer index of the next ordinal pattern.
💮 Table Access: get_table()
This function returns the entire flattened transition table for a specified dimension. This enables local caching of the table (e.g. in an indicator's init() method), avoiding the overhead of repeated library calls during the calculation loop.
💮 Supported Orders & Terminology
The parameter d is the order of ordinal patterns (following Bandt & Pompe 2002). Each pattern of order d contains (d+1) data points, yielding (d+1)! unique patterns:
• d=2: 3 points → 6 unique patterns, 3 successor positions
• d=3: 4 points → 24 unique patterns, 4 successor positions
• d=4: 5 points → 120 unique patterns, 5 successor positions
• d=5: 6 points → 720 unique patterns, 6 successor positions
Note: d=6 is not implemented. The resulting code size (approx. 191k tokens) exceeds the Pine Script limit of 100k tokens (as of 2025-12).
VOLUME with DOUBLE MAA volume chart with dual moving averages. If you're looking for a volume chart with dual moving averages, this script is for you. By averaging the volume over two periods, you can discover more subtle relationships between price and volume.
Momentum Gamma StraddleExact definition of what that script does
1) Purpose
The script is a decision aid for intraday expiry-day ATM straddle trades. It detects intraday structure breakouts and signals candidate long straddle entries for Nifty or Sensex using price structure, volume, RSI momentum, and a user-supplied combined ATM premium value (CE + PE). It draws support/resistance, shows an info box, and raises alerts.
2) Inputs the user can change
Trading time window: startHour, startMin, endHour, endMin.
Structure lookback: res_lookback (how many candles to use to compute resistance/support).
Minimum candle body as fraction of candle range: min_body_pct.
Volume multiplier threshold: vol_mult (breakout candle volume must exceed vol_mult * sma5).
RSI length and thresholds: rsi_len, rsi_bull_thresh, rsi_bear_thresh.
Combined premium source: choose Manual or Symbol. If Manual, set manual_combined. If Symbol, provide a TradingView symbol that returns CE+PE combined ATM premium.
Combined premium acceptable band: min_combined_ok and max_combined_ok.
Profit target percent and SL percent (target_pct and sl_pct).
Misc pattern heuristics: min_res_hits (min tests of resistance inside lookback), low_slope_min (used to detect rising lows).
Micro-confirmation toggle, micro timeframe, nonrepaint option, show_entry_label toggle (in the later fixed versions some of these were added, but the earlier fixed script had basic combined_symbol options and a lookahead fallback).
3) Data calculated on each bar
Safety check hasEnough: true when bar_index >= res_lookback.
resistance: the highest high over res_lookback bars.
support: the lowest low over res_lookback bars.
res_hits: count of bars within lookback whose high is within a tolerance of resistance. Tolerance is 10 percent of the range between resistance and support.
low_slope: simple slope of lows over res_lookback bars.
body_pct: the candle body as a fraction of its high-low range. strong_body true when body_pct >= min_body_pct.
bull_breakout: true if hasEnough and current close > resistance and strong_body and res_hits >= min_res_hits.
bear_breakout: true if hasEnough and current close < support and strong_body and res_hits >= min_res_hits.
vol_sma5 and vol_ok: vol_ok true when current volume > vol_mult * vol_sma5.
rsi and rsi checks: rsi_bull_ok true if rsi >= rsi_bull_thresh; rsi_bear_ok true if rsi <= rsi_bear_thresh.
combined_premium: either the manual_combined input or the value read from combined_symbol via request.security. The script attempted a fallback to manual when the symbol was not valid.
combined_ok: true if combined_premium lies between min_combined_ok and max_combined_ok.
final signals: bull_signal when in_time_window and bull_breakout and vol_ok and rsi_bull_ok and combined_ok. bear_signal similar for bearish breakout.
4) Visual output and alerts
Plots resistance and support lines on the chart.
Plots a label shape "STRADDLE BUY" below the bar for bull_signal and above the bar for bear_signal.
Creates an info label (on last bar) that shows TimeOK, VolOK and vol ratio, RSI, Combined premium and whether it is OK, ResHits and LowSlope.
Sets two alertcondition events: "Bull Straddle BUY" and "Bear Straddle BUY" with a short candidate message. The alerts fire when the corresponding signal is true.
5) Execution assumptions you must follow manually
The script does not place any orders or compute option strike-level prices or greeks. It only flags candidate entry bars.
When combined_source is Manual you must type CE+PE yourself. The indicator will only accept the manual number and treat it as the combined premium.
When combined_source is Symbol the script uses request.security to read that symbol. For historical bars the indicator may repaint depending on lookahead settings. The earlier fixed script attempted to use request.security inside a conditional which leads to runtime or compile errors. You experienced that exact error.
6) Known implementation caveats and bugs you encountered
Pine typing issue with low_slope. The earlier version set low_slope = na without explicit type. That triggers the Pine error: "Value with NA type cannot be assigned to a variable that was defined without type keyword". This required changing to float low_slope = na.
The earlier version attempted to call request.security() inside an if block or conditional. Pine prohibits request.security in conditional blocks unless allowed patterns are followed. That produced the error you saw: "Cannot use request.* call within loops or conditional structures" or similar. The correct pattern is to call request.security at top-level and decide later which value to use.
If combined_symbol is invalid or not available on your TradingView subscription, request.security can return na and the script must fall back to manual value. The earlier fixed script attempted fallback but compiled errors prevented reliable behavior.
The earlier script did not include micro-confirmation or advanced nonrepaint controls. Those were added in later versions. Because of that, the earlier script may have given signals that appear to repaint on historical bars or may have thrown errors when using combined_symbol.
7) Decision logic summary (exact)
Only operate if current chart time is inside user set time window.
Only consider trade candidates when enough history exists for res_lookback.
Identify a resistance level as the highest high in the lookback. Count how many times that resistance was tested. Ensure the breakout candle has a strong body and volume spike. Ensure RSI is aligned with breakout direction.
Require combined ATM premium to be inside a user preferred band. If combined_symbol is used the script tries to read that value and use it; otherwise it uses manual_combined input.
If all the above conditions are true on a confirmed bar, the script plots a STRADDLE BUY label and triggers an alertcondition.
8) What the script does not do
It does not calculate CE and PE prices by strike. It only consumes or accepts combined premium number.
It does not compute greeks, IV, or OI. OI and IV checks must be done manually.
It does not manage positions. No SL management or automatic exits are executed by the script.
It does not simulate fills or account for bid/ask spreads or slippage.
It cannot detect off-exchange block trades or read exchange-level auction states beyond raw volume bars.
It may repaint historical labels if the combined_symbol was read with lookahead_on or the script used request.security in a way that repainted. The corrected final version uses nonrepaint options.
9) Manual checks you must always perform even when the script signals BUY
Confirm the live combined ATM premium and the bid/ask for CE and PE.
Check ATM IV and recent IV movement for a potential IV crush risk.
Check option OI distribution and recent OI changes for strike pinning or large player exposure.
Confirm CE and PE liquidity and depth. Wide spreads make fills unrealistic.
Confirm there is no scheduled news or auction within the next few minutes.
Confirm margin and position sizing fits your risk plan.
10) Quick testing checklist you can run now
Add the script to a 5-minute chart with combined_source = Manual.
Enter manual_combined equal to the real CE+PE at the moment you test.
Set startHour and endHour so the in_time_window is true for current time.
Look for STRADDLE BUY label on confirmed bars. Inspect the info box to see why it did or did not signal.
If you set combined_source = Symbol, verify the symbol exists and that TradingView returns values for it. If you previously saw the request.security error, that was caused by placing the request inside a conditional. The correct behavior is to call request.security unconditionally at top-level like in the final fixed version.
Two individual BB - AxeThis indicator combines two Bollinger Bands into a single script, designed for traders who utilize dual-band strategies but want to keep their chart and indicator list clean.
Instead of adding two separate indicators, this script allows you to manage two Bollinger Bands within one interface. It maintains the full flexibility of the classic Bollinger Bands while adding independent toggles for better visibility control.
SharelineUI_LibraryLibrary "SharelineUI_Library"
get_text_size(opt)
Parameters:
opt (string)
status_color(val)
Parameters:
val (float)
trend_color(trend_cat)
Parameters:
trend_cat (string)
momentum_color(score, bullTh, bearTh)
Parameters:
score (float)
bullTh (float)
bearTh (float)
create_standard_hud(pos, cols, rows)
Parameters:
pos (string)
cols (int)
rows (int)
SharelineCore_LibraryLibrary "SharelineCore_Library"
funding_premium(premiumSym, funding_period, plot_type, interest_rate, fundScale)
Parameters:
premiumSym (string)
funding_period (string)
plot_type (string)
interest_rate (float)
fundScale (float)
cvd_vwap_delta(spotSym, perpSym, normLen, resetCVD)
Parameters:
spotSym (string)
perpSym (string)
normLen (int)
resetCVD (bool)
cvd_trend_norm(spotSymbol, perpSymbol, normLen, resetOnSession)
Parameters:
spotSymbol (string)
perpSymbol (string)
normLen (int)
resetOnSession (bool)
trend_strength_engine(cvdSpot, cvdPerp)
Parameters:
cvdSpot (float)
cvdPerp (float)
bias_engine(plot_value, spotTrendVal, perpTrendVal, spotStrength, perpStrength)
Parameters:
plot_value (float)
spotTrendVal (float)
perpTrendVal (float)
spotStrength (float)
perpStrength (float)
smc_engine(h, l, c, v, ms_len, bos_len, vol_filter, scale_factor, smooth_len, signal_len)
Parameters:
h (float)
l (float)
c (float)
v (float)
ms_len (int)
bos_len (int)
vol_filter (bool)
scale_factor (float)
smooth_len (simple int)
signal_len (simple int)
momentum_engine(o, c, v, fast, slow, signal, rsiLen, normLen, smaShort, smaLong, wMacd, wRsi, wCvd, wVpi)
Parameters:
o (float)
c (float)
v (float)
fast (simple int)
slow (simple int)
signal (simple int)
rsiLen (simple int)
normLen (int)
smaShort (int)
smaLong (int)
wMacd (float)
wRsi (float)
wCvd (float)
wVpi (float)
oi_engine(quotecur, useBinance, useBinance2, useBinance3, useBitmex, useBitmex2, useKraken, d_mult, strength1_mult, strength2_mult)
Parameters:
quotecur (string)
useBinance (bool)
useBinance2 (bool)
useBinance3 (bool)
useBitmex (bool)
useBitmex2 (bool)
useKraken (bool)
d_mult (float)
strength1_mult (float)
strength2_mult (float)
BALA'S Indicator - Dynamic + 5-Min + Pre-Market LevelsINTRADAY Strategy on Nifty with 15min Candle Setup.
Miela Labs | John Dee's Watchtower [257-463]Bridging the gap between 16th-century esoteric mathematics and modern algorithmic trading.
The Enochian Watchtower is not merely a trend indicator; it is a computational artifact developed by Miela Labs LLC. This script translates Dr. John Dee’s "Great Table of the Watchtowers" and the "Sigil Dei Aemeth" into actionable financial data points.
Using our proprietary Occultator V2.0 Engine, we have derived specific mathematical constants that resonate with the current market structure.
🏛️ The Algorithmic Logic
This indicator utilizes three sacred numbers to construct a "Future Vision" of the market:
1. The Axis Mundi (Vector 257): derived from Fermat Primes and John Dee’s Grid coordinates. This Weighted Moving Average (WMA) acts as the spinal cord of the trend.
2. The Gates (Cipher 463): A prime number derived from the "Galethog" cipher stride. These bands define the absolute volatility limits (Heaven & Earth Gates).
3. Future Vision (Offset 21): Utilizing Fibonacci time sequences, the indicator projects Support and Resistance levels 21 bars into the future, allowing traders to anticipate market movements before they occur.
⚡ How to Use
• The Trend: If price is above the Purple Axis (257), the market is in a bullish phase.
• The Entry: Look for "L" (Long) and "S" (Short) signals. These are confirmed when the signal path crosses the Axis.
• The Future: Watch the projected lines on the right side of the chart to identify upcoming resistance zones.
About Miela Labs
Miela Labs is a Technomancy Research Institute based in McKinney, Texas. We specialize in building open-source esoteric trading tools and the Magic Programming Language (MPL).
🌐 Official Hub: Visit Miela Labs
💻 Source Code & Research: GitHub Repository
Disclaimer: This tool is for educational and research purposes only. It demonstrates the application of esoteric mathematics in financial analysis. Trade responsibly.
NeoChartLabs EMAsOne of our Favorite Indicators - the NeoChart Labs 20/50/100/200 EMAs
20 = Blue and very thin
50 = Orange and thin
100 = Purple and thick
200 = White and very thick
When 20 Crosses above and below any other expect action.
50 crossing 200 on the 1D is the death cross.
Shout out to drsweets for the original script
Kalkulator pozycji XAUUSD PLN, 1:500, 1100 to 100 kontaPosition calculator based on the number of pips that you quickly enter from the tool, this device will select the appropriate lot for you and you can quickly take a position
BTC Regime Oscillator (MC + Spread) [1D]ONLY SUPPOSED TO BE USED FOR BTC PERPS, AND SPOT LEVERAGING:
This is a risk oscillator that measures whether Bitcoin’s price is supported by real capital or is running ahead of it, and converts that into a simple risk-regime oscillator.
It's built with market cap, and FDV, and Z-scores compressed to -100 <-> 100
I created this indicator because I got tired of FOMO Twitter and Wall Street games.
DO NOT USE THIS AS A BEGIN-ALL-AND-END-ALL. YOU NEED TO USE THIS AS A CONFIRMATION INDICATOR, AND ON HTF ONLY (1D>) IF YOU USE THIS ON LOWER TIMEFRAMES, YOU ARE FEEDING YOUR MONEY TO A LOW-LIFE DING BAT ON WALL STREET. HERE IS HOW IT WORKS:
This indicator is Split up by
A) Market Cap
--> Represents real money in BTC
--> Ownership capital
--> If MC is rising, money is entering BTC
B) FDV (Fully Diluted Valuation)
--> For BTC: price(21M) (21,000,000)
--> Represents the theoretical valuation
--> Since BTC really has a fixed cap, FDV mostly tracks the price
C) Oscillators
Both MC and FDV are:
--> Logged (to handle scale)
--> Normalized (Z-score)
--> Compressed to -100 <-> 100
HERE ARE THREE THINGS YOU ARE GOING TO SEE ON THE CHART
A) The market cap oscillator (MC OSC)
--> Normalized trend of real capital
RISING: Indicates capital inflow
FALLING: Indicates capital outflow
B) FDV Oscillator
--> Normalized trend of valuation pressure
ABOVE MC: Price is ahead of capital
BELOW MC: Capital is keeping up
!!!! FDV IS CONTEXT NOT SIGNALS !!!!
C) Spread = (FDV - MC)
--> The difference between valuation and capital
(THIS IS THE CORE SIGNAL)
NEGATIVE: Capital is gonna lead price
NEAR 0: Balanced
POSITIVE: Price leads capital
(THIS MEANS STRESS FOR BTC, NOT DILLUTION!)
WHAT DOES -60, 0, 60 MEAN?:
--> These are meant to serve as risk zones, not buy/sell dynamics; this is not the same as an RSI oscillator.
A) 0 level
--> Price and capital are balanced
--> No structural stress
(TRADE WITH NORMAL POSITION SIZE, AND NORMAL EXPECTATIONS)
B) Below -60 (Supportive/Compressed)
--> BTC is relatively cheap to recent history
--> Capital supports price well
(ALWAYS REMEMBER TO CONFIRM THIS WITH WHAT THE CHART IS TELLING YOU)
--> Press trends
--> Use higher ATRs
--> Pullbacks are better here
C) Above 60 (Overextension, or fragile)
--> BTC is expensive relative to recent history
--> Price is ahead of capital
(ALWAYS REMEMBER TO CONFIRM THIS WITH WHAT THE CHART IS TELLING YOU)
--> Reduce leverage, use smaller ATR
--> Use lower ATRs, TP faster
--> Do not chase breakouts
--> Expect volatility and whipsaws
"Can I press trades right now? Or do I need to hog my capital?"
CONDITIONS:
Spread Less than 0 and below -60 = Press trades
Spread near 0 = Normal trading conditions
Spread is Greater than 0 or above 60+ = Capital protection
Fractal Dimension (Katz, Quant Lab)This indicator estimates the Katz Fractal Dimension of the price series over a rolling window.
It computes:
• L = sum of absolute price changes within the window
• d = maximum distance between any point and the first point in the window
• n = window length
Then applies Katz’s formula:
FDI = ln(n) / (ln(n) + ln(d / L))
The resulting Fractal Dimension typically lies between 1.0 and 2.0:
• FDI ≈ 1.0–1.3 → Strong, directional trend (low randomness)
• FDI ≈ 1.3–1.5 → Mixed / transitional behavior
• FDI ≈ 1.5–2.0 → Noisy, choppy, mean-reverting / range market
Entry Scanner Conservative Option AKeeping it simple,
Trend,
RSI,
Stoch RSI,
MACD, checked.
Do not have entry where there is noise on selection, look for cluster of same entry signals.
If you can show enough discipline, you will be profitable.
CT
Variance Ratio & Efficiency Ratio (Quant Lab)1️⃣ Variance Ratio (VR)
Formula:
VR ≈ Var(q-step returns) / (q × Var(1-step returns))
Interpretation:
• VR ≈ 1 → The market is like a random walk; neither trend nor mean-reversion is dominant.
• VR > 1 → Trend behavior is dominant.
• Trend-following systems (EMA, Supertrend, breakout) work better.
• VR < 1 → Mean-reversion is dominant.
• Range/reversal strategies (Z-score, Bollinger fade, RSI reversal) work better.
In short:
• VR > 1 → Trending market
• VR < 1 → Mean-reverting market
This tells you:
“Should I build a trend system or a mean-reversion system for this instrument?”
⸻
2️⃣ Efficiency Ratio (ER)
Formula logic:
ER = |Close_now – Close_n-bars-ago| / Σ|Close_i – Close_{i+1}|
In other words:
• Numerator → Net movement over N bars
• Denominator → Total noise over N bars
Interpretation:
• ER ≈ 1 → The price has moved in almost a straight line in one direction.
→ The trend is very efficient, noise is low.
• ER ≈ 0 → The price has fluctuated a lot but hasn't gone anywhere definitively.
→ A complete noise/range market.
This tells you:
“How clear is the trend in this last N bars, and how much noise is there?”
⸻
🔥 The intelligence provided by both together:
• VR > 1 and ER is high (0.6–1.0) →
➜ Strong, high-quality trend. Golden age for trend-following.
• VR > 1 but ER is low (0.2–0.4) →
➜ Trend exists but there is a lot of noise, many fake movements. • VR < 1 and ER is low →
➜ Net range / sideways market. Ideal for mean-reversion.
Rolling Z-Score (Quant Lab)What does this Z-Score measure?
• src (default = close) → the value of the series you selected
• len → the window you are measuring based on the average of the last few bars
• Z ≈ 0 → price close to the average
• Z > 2 → price 2 standard deviations above the average (extremely positive deviation)
• Z < -2 → 2 standard deviations below the average (extremely negative deviation)
In modern mean-reversion strategies:
• Z > +2 → short / take profit candidate
• Z < –2 → long / dip buy candidate
Quicksilver Institutional Trend [1H] The "God Candle" Catcher Most retail traders fail because they lack institutional tooling.
The Quicksilver Institutional Trend is designed to keep you in the trade during massive expansion moves and keep you out during the chop. It replaces "guessing" with a structured, math-based Trend Cloud.
THE LOGIC (Institutional Engine):
Visual Trend Cloud: A dynamic ribbon that identifies the dominant 1H market regime.
Momentum Filter (ADX): The bars change color based on Trend Strength.
Bright Green/Red: High Momentum (Institutional Volume). Stay in the trade.
Dark Green/Red: Low Momentum. Prepare to exit.
Liquidity Zones: Automatically draws Support & Resistance lines at recent institutional pivot points.
👨💻 NEED A CUSTOM BOT?
Stop trading manually. We can convert YOUR specific strategy into an automated algorithm.
Quicksilver Algo Systems specializes in building custom solutions for:
TradeLocker Studio (Python)
TradingView (Pine Script)
cTrader (C#)
MetaTrader 4/5 (MQL)
We don't just sell indicators; we engineer automated execution systems tailored to your exact risk parameters.
🚀 HOW TO HIRE US:
If you have a strategy you want automated, we are currently accepting new custom development projects.
Contact the Lead Developer directly:
📧 Email: quicksilveralgo@gmail.com
(Include "Custom Bot Request" in the subject line for priority review).
🔥 UNLOCK THE NEXT INDICATOR:
We are releasing our "Sniper Scalper" logic next week.
Hit the BOOST (Rocket) Button 🚀 above.
Click FOLLOW on our profile.
Comment "QAS" below if you want to be notified.
Disclaimer: Trading involves substantial risk. Educational purposes only.
LL-HL PivotThis indicator scans for the bullish structure known as a Higher Low (HL) across multiple lengths simultaneously, automatically selects the most suitable pattern, and plots it on the chart.
Below is a detailed explanation of how it works.
1. Basic Calculation Method (Definition of LL and HL)
This indicator is built on TradingView’s ta.pivotlow function.
Detecting Pivot Lows
For a given length, a Pivot Low is identified as the lowest point among the candles within the specified range to the left and right.
LL and HL Determination
LL (Lowest Low): The most recent Pivot Low is treated as the previous low.
HL (Higher Low): When a new Pivot Low forms above the previous LL, it is recognized as an HL, and the setup is considered “complete.”
Identifying the Pivot Line
During the LL–HL structure, the highest high between them is identified and used as the breakout level (Pivot Line / resistance), where a horizontal line is drawn.
2. Multi-Length Scanning
Unlike standard indicators that use only one length (e.g., Length = 5), this indicator evaluates a full range of lengths.
Min Length to Max Length
Example: Min = 2, Max = 10
Internally, it functions as if nine separate indicators (Length 2, 3, 4 … 10) are running simultaneously.
This allows the indicator to capture:
Small waves (short-term pullbacks)
Larger waves (broader structural moves)
3. Priority Mode System
Because multiple lengths are calculated at the same time, different LL–HL patterns may appear simultaneously.Priority Mode determines which setup is selected and displayed.
A. Lowest LH
Selects the pattern with the lowest pivot line (intermediate high).
Advantages:
Produces the lowest possible entry price
B. Longest Length
Selects the pattern with the longest length.
Advantages:
Focuses on larger structures and broader waves
Filters out noise
C. Shortest Length
Selects the pattern with the shortest length.
Advantages:
Reacts quickly to small moves
Useful for scalping or fast trend-following
Captures very short-term pullbacks
4. Additional Behavior and Features
Real-Time Invalidation
If price breaks below the confirmed HL, the structure is immediately considered invalid.
All previously drawn lines and labels are removed instantly, preventing outdated structures from remaining on the chart.
Pivot Line Extension
As long as the HL remains intact, the Pivot Line (breakout level) continues extending to the right.
Alerts
An alert can be triggered the moment price breaks above the Pivot Line on a closing basis.






















