Breakout & Breakdown Detector with CPRwhwn a break out is indicated enter into a buy position and whwn breakdown is indicated exit trade
Indicadores e estratégias
Weekday Labels with Infinite Vertical LinesThis indicator is 2 part of "Daily Separator with Day". Add this indicator for open all adventage this 2 indicator
Daily Separator with Daythis indicator about vertical lines at weekly days. Add at chart a 2 part of this indicator - Weekdays Labels to have all advantages this indicator
VNIndex Over 6.5% Downside Drop Indicator with TableOverview: The VNIndex 6.5% Downside Drop Indicator is a powerful tool designed to help traders and investors identify significant market drops on the VNIndex (or any other asset) based on a 6.5% downside threshold. This Pine Script® indicator automatically detects when the price of an asset drops by more than 6.5% within a single day, and visually marks those events on the chart.
Key Features:
6.5% Downside Drop Detection: Automatically calculates the daily percentage drop and identifies when the price falls by more than 6.5%.
Table Display: Displays the dates and corresponding percentage drops of all identified instances in a convenient table at the bottom right of the chart.
Markers: Red down-pointing markers are plotted above bars where the price drop exceeds the 6.5% threshold, making it easy to spot critical drop events at a glance.
Easy-to-Read Table: The table lists the date and drop percentage, updating dynamically as new drops are detected. This allows for easy tracking of significant downside moves over time.
How to Use:
Install the Script: Add this indicator to your TradingView chart.
Monitor Price Drops: The indicator will automatically detect when the price drops by over 6.5% from the previous close and display a marker on the chart and the table in the bottom right corner.
View the Table: The table displays the date and the percentage drop of each detected event, making it easy to track past significant moves.
Alerts: You can set an alert for 6.5% drops to receive notifications in real-time.
Customization Options:
The drop percentage threshold (6.5%) can be adjusted in the script to fit other market conditions or assets.
The table can be resized or styled based on user preference for better visibility.
Why Use This Indicator? This indicator is perfect for traders looking to spot large, significant price movements quickly. Large downside drops can signal potential market reversals or trading opportunities, and this tool helps you track such events effortlessly. Whether you're monitoring the VNIndex or any other asset, this indicator provides crucial insights into volatile price action, helping you make more informed decisions.
Open Source License: This indicator is open source and free to use under the Mozilla Public License 2.0. You are welcome to modify, distribute, and contribute to the project.
Contributions: Feel free to contribute improvements, fixes, or new features by creating a pull request. Let’s collaborate to make this indicator even better for the community!
Rally Starter BandsEnglish Description:
Rally Starter Bands – Pine Script Indicator
This is a Pine Script indicator designed to identify potential rally opportunities in the market using Bollinger Bands. It plots the traditional Bollinger Bands and highlights specific conditions where the upper and middle bands are rising while the lower band is falling. When these conditions are met, the indicator displays a green up arrow below the price bar, signaling a potential upward momentum.
---
Credits:
Strategy: Adem Ayan (x.com/ademayan66/status/1901706968508637483)
Screening Codes: Dip Avcısı (x.com/dipavcisi007)
My Bar IndexA simple script to display bar index at the bottom of the chart. It will be a handy tool for those who like to do bar counts.
SublimeDubs EMA CloudShoutout Ripster for open-sourcing his code! This is a slight improvement/update to his code. A lot is customizable via settings instead of in the script. You can change the colors more easily now. I also added lines with price labels for the clouds and offset them by x amount of bar lengths. I can't do much about the vertical spacing but at least you can move it horizontally.
Nifty 0.6% Options Strategy [15min]Key Changes Made:
Threshold Adjustment:
Changed from 0.4% to 0.6% in two places (input and plot labels)
Updated alert messages accordingly
Visual Improvements:
Clear "+0.6%" and "-0.6%" labels on the reference lines
Maintained all visual markers (circles for thresholds, labels for signals)
Added Alert Conditions:
Ready-to-use alerts for mobile/email notifications
Separate alerts for CALL and PUT signals
Strategy Logic Remains:
Same entry/exit mechanics (4-bar hold period)
Same non-repainting signal calculation
Same money management parameters
This version gives you slightly fewer but higher-probability signals compared to the 0.4% version, while maintaining all the robust features of the original strategy. The wider threshold helps filter out market noise during choppy periods.
Nifty 0.4% Options Strategy [15min]How This Works:
Entries:
CALL when Nifty moves +0.4% from previous close
PUT when Nifty moves -0.4% from previous close
Exits:
Automatically closes all positions after specified bars (default: 4 bars = 1 hour)
Visuals:
Gray line: Previous day's close
Green circles: +0.4% threshold
Red circles: -0.4% threshold
Symmetric cost of each candle (SH)This indicator makes Calculation of the symmetric cost of each candle and
Placing a point or small line attached to each candle itself.
lib_plot_objects_1Library "lib_plot_objects_1"
method extend_to(this, end_time, end_idx, end_price)
Namespace types: Line
Parameters:
this (Line)
end_time (int)
end_idx (int)
end_price (float)
method or_default(args)
checks args oject for being na, if so, provide a default instead
Namespace types: LineArgs
Parameters:
args (LineArgs)
method or_default(args)
checks args oject for being na, if so, provide a default instead
Namespace types: PolyLineArgs
Parameters:
args (PolyLineArgs)
method or_default(args)
checks args oject for being na, if so, provide a default instead
Namespace types: LabelArgs
Parameters:
args (LabelArgs)
method or_default(args)
checks args oject for being na, if so, provide a default instead
Namespace types: BoxArgs
Parameters:
args (BoxArgs)
method or_default(args)
checks args oject for being na, if so, provide a default instead
Namespace types: BoxTextArgs
Parameters:
args (BoxTextArgs)
method direction(this)
Namespace types: Candle
Parameters:
this (Candle)
method is_green(this)
Namespace types: Candle
Parameters:
this (Candle)
method is_red(this)
Namespace types: Candle
Parameters:
this (Candle)
method is_bullish(this)
Namespace types: Candle
Parameters:
this (Candle)
method is_bearish(this)
Namespace types: Candle
Parameters:
this (Candle)
method total_size(this)
Namespace types: Candle
Parameters:
this (Candle)
method body_size(this)
Namespace types: Candle
Parameters:
this (Candle)
method body_top(this)
Namespace types: Candle
Parameters:
this (Candle)
method body_bottom(this)
Namespace types: Candle
Parameters:
this (Candle)
method wick_size_top(this)
Namespace types: Candle
Parameters:
this (Candle)
method wick_size_bottom(this)
Namespace types: Candle
Parameters:
this (Candle)
method body_total_ratio(this)
Namespace types: Candle
Parameters:
this (Candle)
method duration(this)
Namespace types: Candle
Parameters:
this (Candle)
create_candle(t, tc, idx, o, h, l, c, v)
Creates Candle with ohlc and index data
Parameters:
t (int) : bar time of this candle
tc (int) : bar close time of this candle
idx (int) : bar index of this candle
o (float) : open price of this candle
h (float) : highest price of this candle
l (float) : lowest price of this candle
c (float) : close price of this candle
v (float)
Returns: new Candle
create_point(x, price, xloc)
Creates a new chart.point based on xloc switch
Parameters:
x (int)
price (float)
xloc (string)
method calculate_center(indexA, priceA, indexB, priceB)
Creates center chart.point between two chart.points
Namespace types: series int, simple int, input int, const int
Parameters:
indexA (int) : coordinates of point A (using just index, because time will not work properly in session based instruments)
priceA (float) : coordinates of point A
indexB (int) : coordinates of point B (using just index, because time will not work properly in session based instruments)
priceB (float) : coordinates of point B
Returns: center coordinates
method calculate_center(this, other)
Creates center chart.point between an array of given chart.points
Namespace types: chart.point
Parameters:
this (chart.point)
other (chart.point)
Returns: center coordinates
method calculate_center(points)
Creates center chart.point between an array of given chart.points
Namespace types: array
Parameters:
points (array) : array of chart.points for calculation of the center
Returns: center chart.point
method calculate_center(this)
Namespace types: Line
Parameters:
this (Line)
method calculate_center(this)
Namespace types: PolyLine
Parameters:
this (PolyLine)
method create_center(this, other)
Creates center chart.point between two chart.points
Namespace types: chart.point
Parameters:
this (chart.point) : chart.point
other (chart.point) : chart.point
Returns: center chart.point
method create_center(points)
Creates center chart.point between an array of given chart.points
Namespace types: array
Parameters:
points (array) : array of chart.points for calculation of the center
Returns: center chart.point
method create_center(this)
Namespace types: Line
Parameters:
this (Line)
method create_center(this)
Namespace types: PolyLine
Parameters:
this (PolyLine)
create_label(x, y, xloc, txt, tooltip)
Creates a new Label object.
Parameters:
x (int)
y (float)
xloc (string)
txt (string)
tooltip (string)
method create_label(this, txt, tooltip)
Creates a new Label object.
Namespace types: chart.point
Parameters:
this (chart.point)
txt (string)
tooltip (string)
method create_label(txt, tooltip)
Creates a new Label object.
Namespace types: series string, simple string, input string, const string
Parameters:
txt (string)
tooltip (string)
method create_label(this, txt, tooltip)
Creates a new Label object.
Namespace types: Line
Parameters:
this (Line)
txt (string)
tooltip (string)
method create_label(this, txt, tooltip)
Creates a new Label object.
Namespace types: Box
Parameters:
this (Box)
txt (string)
tooltip (string)
method create_center_label(this, txt, tooltip)
Creates a new Label object.
Namespace types: Line
Parameters:
this (Line)
txt (string)
tooltip (string)
method create_center_label(this, txt, tooltip)
Creates a new Label object.
Namespace types: PolyLine
Parameters:
this (PolyLine)
txt (string)
tooltip (string)
method nz(this, default)
Namespace types: chart.point
Parameters:
this (chart.point)
default (chart.point)
method nz(this, default)
Namespace types: Candle
Parameters:
this (Candle)
default (Candle)
method nz(this, default)
Namespace types: LabelArgs
Parameters:
this (LabelArgs)
default (LabelArgs)
method nz(this, default)
Namespace types: Label
Parameters:
this (Label)
default (Label)
method nz(this, default)
Namespace types: LineArgs
Parameters:
this (LineArgs)
default (LineArgs)
method nz(this, default)
Namespace types: Line
Parameters:
this (Line)
default (Line)
method nz(this, default)
Namespace types: PolyLineArgs
Parameters:
this (PolyLineArgs)
default (PolyLineArgs)
method nz(this, default)
Namespace types: PolyLine
Parameters:
this (PolyLine)
default (PolyLine)
method nz(this, default)
Namespace types: CenterLabel
Parameters:
this (CenterLabel)
default (CenterLabel)
method nz(this, default)
Namespace types: LineFill
Parameters:
this (LineFill)
default (LineFill)
method nz(this, default)
Namespace types: BoxArgs
Parameters:
this (BoxArgs)
default (BoxArgs)
method nz(this, default)
Namespace types: BoxTextArgs
Parameters:
this (BoxTextArgs)
default (BoxTextArgs)
method nz(this, default)
Namespace types: Box
Parameters:
this (Box)
default (Box)
create_line(start_time, start_idx, start_price, end_time, end_idx, end_price)
Parameters:
start_time (int)
start_idx (int)
start_price (float)
end_time (int)
end_idx (int)
end_price (float)
create_line(x1, y1, x2, y2, xloc)
Parameters:
x1 (int)
y1 (float)
x2 (int)
y2 (float)
xloc (string)
create_line()
create_box(left_time, left_idx, top, right_time, right_idx, bottom, txt)
Parameters:
left_time (int)
left_idx (int)
top (float)
right_time (int)
right_idx (int)
bottom (float)
txt (string)
create_box(left, top, right, bottom, xloc, txt)
Parameters:
left (int)
top (float)
right (int)
bottom (float)
xloc (string)
txt (string)
create_box(txt)
Parameters:
txt (string)
method create_fill(this, other, fill_color, flip)
Creates a new LineFill object.
@field this The first Line object
@field other The second Line object
@field fill_color The color used to fill the space between the lines.
@field flip Optional if true, a new support line is created, drawn over other but with flipped start and end point
Namespace types: Line
Parameters:
this (Line)
other (Line)
fill_color (color)
flip (bool)
method enqueue(id, item, max)
Namespace types: array
Parameters:
id (array)
item (Candle)
max (int)
method enqueue(id, item, max)
Namespace types: array
Parameters:
id (array)
item (chart.point)
max (int)
method enqueue(id, item, max)
Namespace types: array
Parameters:
id (array)
item (Label)
max (int)
method enqueue(id, item, max)
Namespace types: array
Parameters:
id (array)
item (CenterLabel)
max (int)
method enqueue(id, item, max)
Namespace types: array
Parameters:
id (array)
item (Line)
max (int)
method enqueue(id, item, max)
Namespace types: array
Parameters:
id (array)
item (LineFill)
max (int)
method enqueue(id, item, max)
Namespace types: array
Parameters:
id (array)
item (PolyLine)
max (int)
method update(this, bar_time, bar_time_close, bar_idx, o, h, l, c, v)
Updates a Candle object with new data.
Namespace types: Candle
Parameters:
this (Candle)
bar_time (int)
bar_time_close (int)
bar_idx (int)
o (float)
h (float)
l (float)
c (float)
v (float)
method update(this, bar_time, bar_idx, price)
Updates a chart.point object with new data.
Namespace types: chart.point
Parameters:
this (chart.point)
bar_time (int)
bar_idx (int)
price (float)
Returns: true if changed, false otherwise
method update(this, x, price, xloc)
Updates a chart.point object with new data.
Namespace types: chart.point
Parameters:
this (chart.point)
x (int)
price (float)
xloc (string)
Returns: true if changed, false otherwise
method update(this, update)
Updates a chart.point object with new data from another chart.point.
Namespace types: chart.point
Parameters:
this (chart.point)
update (chart.point)
Returns: true if changed, false otherwise
method update(this, bar_time, bar_idx, price, txt, tooltip)
Updates a Label's chart.point object with new data from another chart.point, or sets it if the Label's chart.point is na. If txt parameter is not given, it's not updated.
Namespace types: Label
Parameters:
this (Label)
bar_time (int)
bar_idx (int)
price (float)
txt (string)
tooltip (string)
method update(this, point, txt, tooltip)
Updates a Label's chart.point object with new data from another chart.point, or sets it if the Label's chart.point is na. If txt parameter is not given, it's not updated.
Namespace types: Label
Parameters:
this (Label)
point (chart.point)
txt (string)
tooltip (string)
method update(this, points, txt, tooltip, condition)
Updates a Label's chart.point object with new data from another chart.point, or sets it if the Label's chart.point is na. If txt parameter is not given, it's not updated.
Namespace types: CenterLabel
Parameters:
this (CenterLabel)
points (array)
txt (string)
tooltip (string)
condition (bool)
method update(this, txt, tooltip)
Updates a Label's chart.point object with new data from another chart.point, or sets it if the Label's chart.point is na. If txt parameter is not given, it's not updated.
Namespace types: CenterLabel
Parameters:
this (CenterLabel)
txt (string)
tooltip (string)
method update(this, start, end)
Updates this Line's chart.point objects with new data from other chart.points.
Namespace types: Line
Parameters:
this (Line)
start (chart.point)
end (chart.point)
method update(this, points)
Updates this PolyLine's chart.point objects with new data from other chart.points. As the plot polyline has no options to be updated, it will be deleted before being redrawn in draw()
Namespace types: PolyLine
Parameters:
this (PolyLine)
points (array)
method update(this, left_top, right_bottom)
Updates a Box's chart.point objects with new data from other chart.points.
Namespace types: Box
Parameters:
this (Box)
left_top (chart.point)
right_bottom (chart.point)
method delete(this)
Removes an objects representation from the chart.
Namespace types: Line
Parameters:
this (Line)
method delete(this)
Removes an objects representation from the chart.
Namespace types: PolyLine
Parameters:
this (PolyLine)
method delete(this)
Removes an objects representation from the chart.
Namespace types: Label
Parameters:
this (Label)
method delete(this)
Removes an objects representation from the chart.
Namespace types: CenterLabel
Parameters:
this (CenterLabel)
method delete(this)
Removes an objects representation from the chart.
Namespace types: Box
Parameters:
this (Box)
method delete(this)
Removes an objects representation from the chart.
Namespace types: LineFill
Parameters:
this (LineFill)
method delete(this)
Removes the representations of an array of objects from the chart.
Namespace types: array
Parameters:
this (array)
method delete(this)
Removes the representations of an array of objects from the chart.
Namespace types: array
Parameters:
this (array)
method delete(this)
Removes the representations of an array of objects from the chart.
Namespace types: array
Parameters:
this (array)
method delete(this)
Removes the representations of an array of objects from the chart.
Namespace types: array
Parameters:
this (array)
method delete(this)
Removes the representations of an array of objects from the chart.
Namespace types: array
Parameters:
this (array)
method delete(this)
Removes the representations of an array of objects from the chart.
Namespace types: array
Parameters:
this (array)
method delete(this)
Removes the representations of an array of objects from the chart.
Namespace types: array
Parameters:
this (array)
method delete(this)
Removes the representations of an array of objects from the chart.
Namespace types: array
Parameters:
this (array)
method delete(this)
Removes the representations of an array of objects from the chart.
Namespace types: array
Parameters:
this (array)
method delete(this)
Removes the representations of an array of objects from the chart.
Namespace types: array
Parameters:
this (array)
method delete(this)
Removes the representations of an array of objects from the chart.
Namespace types: array
Parameters:
this (array)
method draw(this, a, b, args, extend_only, force_overlay)
Adds/Updates the representations of an object to the chart (only point coordinates).
Namespace types: series line
Parameters:
this (line)
a (chart.point)
b (chart.point)
args (LineArgs)
extend_only (bool) : this will omit redrawing x1 of the line, thereby prevent adressing bar_indexes too far in the past which causes max_bars_back errors. (default: true, set to false if you want x1 updated on drawing)
force_overlay (simple bool)
method draw(this, args, force_overlay)
Adds/Updates the representations of an object to the chart (only point coordinates and text).
Namespace types: Label
Parameters:
this (Label)
args (LabelArgs)
force_overlay (simple bool)
method draw(this, args, force_overlay)
Adds/Updates the representations of an object to the chart (only point coordinates and text).
Namespace types: CenterLabel
Parameters:
this (CenterLabel)
args (LabelArgs)
force_overlay (simple bool)
method draw(this, args, extend_only, force_overlay)
Adds/Updates the representations of an object to the chart (only point coordinates).
Namespace types: Line
Parameters:
this (Line)
args (LineArgs)
extend_only (bool) : this will omit redrawing x1 of the line, thereby prevent adressing bar_indexes too far in the past which causes max_bars_back errors. (default: true, set to false if you want x1 updated on drawing)
force_overlay (simple bool)
method draw(this, args, force_overlay)
Adds/Updates the representations of an object to the chart.
Namespace types: PolyLine
Parameters:
this (PolyLine)
args (PolyLineArgs)
force_overlay (simple bool)
method draw(this, args, text_args, extend_only, force_overlay)
Adds/Updates the representations of an object to the chart (only point coordinates).
Namespace types: Box
Parameters:
this (Box)
args (BoxArgs)
text_args (BoxTextArgs)
extend_only (bool) : this will omit redrawing the left side of the box, thereby prevent adressing bar_indexes too far in the past which causes max_bars_back errors. (default: true, set to false if you want x1 updated on drawing)
force_overlay (simple bool)
method draw(this, flip_support_args, force_overlay)
Adds/Replaces the representations of the object on the chart.
Namespace types: LineFill
Parameters:
this (LineFill)
flip_support_args (LineArgs)
force_overlay (simple bool)
method draw(this, args, force_overlay)
converts this object into a builtin plot object, drawing it on the chart, unless drawn once before, this will either use the passed or default config for all objects
Namespace types: array
Parameters:
this (array)
args (LabelArgs)
force_overlay (simple bool)
method draw(this, args, force_overlay)
converts this object into a builtin plot object, drawing it on the chart, unless drawn once before, this will either use the passed or default config for all objects
Namespace types: array
Parameters:
this (array)
args (LabelArgs)
force_overlay (simple bool)
method draw(this, args, force_overlay)
converts this object into a builtin plot object, drawing it on the chart, unless drawn once before, this will either use the passed or default config for all objects
Namespace types: array
Parameters:
this (array)
args (PolyLineArgs)
force_overlay (simple bool)
method draw(this, args, extend_only, force_overlay)
converts this object into a builtin plot object, drawing it on the chart, unless drawn once before, this will either use the passed or default config for all objects
Namespace types: array
Parameters:
this (array)
args (LineArgs)
extend_only (bool)
force_overlay (simple bool)
method draw(this, flip_support_args, force_overlay)
converts this object into a builtin plot object, drawing it on the chart, unless drawn once before, this will either use the passed or default config for all objects
Namespace types: array
Parameters:
this (array)
flip_support_args (LineArgs)
force_overlay (simple bool)
method draw(this, args, txt_args, extend_only, force_overlay)
converts this object into a builtin plot object, drawing it on the chart, unless drawn once before, this will either use the passed or default config for all objects
Namespace types: array
Parameters:
this (array)
args (BoxArgs)
txt_args (BoxTextArgs)
extend_only (bool)
force_overlay (simple bool)
method hide(this)
Namespace types: series label
Parameters:
this (label)
method hide(this)
Namespace types: series line
Parameters:
this (line)
method hide(this)
Namespace types: series polyline, series polyline, series polyline, series polyline
Parameters:
this (polyline)
method hide(this)
Namespace types: series box
Parameters:
this (box)
method hide(this)
Namespace types: chart.point
Parameters:
this (chart.point)
method hide(this)
hides an object by setting it's coordinates na, to unhide just update coordinates and call draw() again
Namespace types: Label
Parameters:
this (Label)
method hide(this)
hides an object by setting it's coordinates na, to unhide just update coordinates and call draw() again
Namespace types: CenterLabel
Parameters:
this (CenterLabel)
method hide(this)
hides an object by setting it's coordinates na, to unhide just update coordinates and call draw() again
Namespace types: Line
Parameters:
this (Line)
method hide(this)
hides an object by setting it's coordinates na, to unhide just update coordinates and call draw() again
Namespace types: PolyLine
Parameters:
this (PolyLine)
method hide(this)
hides an object by setting it's coordinates na, to unhide just update coordinates and call draw() again
Namespace types: Box
Parameters:
this (Box)
method apply_style(this, args)
Namespace types: series line
Parameters:
this (line)
args (LineArgs)
method apply_style(this, args)
Namespace types: series label
Parameters:
this (label)
args (LabelArgs)
method apply_style(this, args, text_args)
Namespace types: series box
Parameters:
this (box)
args (BoxArgs)
text_args (BoxTextArgs)
method apply_style(this, args)
updates styles on this objects plot
Namespace types: Label
Parameters:
this (Label)
args (LabelArgs)
method apply_style(this, args)
Namespace types: CenterLabel
Parameters:
this (CenterLabel)
args (LabelArgs)
method apply_style(this, args)
Namespace types: Line
Parameters:
this (Line)
args (LineArgs)
method apply_style(this, args, text_args)
updates styles on this objects plot
Namespace types: Box
Parameters:
this (Box)
args (BoxArgs)
text_args (BoxTextArgs)
method apply_style(this, args)
updates styles on these objects' plots
Namespace types: array
Parameters:
this (array)
args (LabelArgs)
method apply_style(this, args)
updates styles on these objects' plots
Namespace types: array
Parameters:
this (array)
args (LabelArgs)
method apply_style(this, args)
updates styles on these objects' plots
Namespace types: array
Parameters:
this (array)
args (LabelArgs)
method apply_style(this, args)
updates styles on these objects' plots
Namespace types: array
Parameters:
this (array)
args (LineArgs)
method apply_style(this, args)
updates styles on these objects' plots
Namespace types: array
Parameters:
this (array)
args (LineArgs)
method apply_style(this, args, text_args)
updates styles on these objects' plots
Namespace types: array
Parameters:
this (array)
args (BoxArgs)
text_args (BoxTextArgs)
method deep_copy(this)
clones the whole object including points and plots
Namespace types: Label
Parameters:
this (Label)
method deep_copy(this)
clones the whole object including points and plots
Namespace types: Line
Parameters:
this (Line)
method deep_copy(this)
clones the whole object including points and plots
Namespace types: Box
Parameters:
this (Box)
method deep_copy(this, copy_references)
clones the whole object including points and plots
Namespace types: CenterLabel
Parameters:
this (CenterLabel)
copy_references (bool)
method deep_copy(this, copy_references)
clones the whole object including points and plots
Namespace types: LineFill
Parameters:
this (LineFill)
copy_references (bool)
Candle
Fields:
bar_time (series int)
bar_time_close (series int)
bar_idx (series int)
o (series float)
h (series float)
l (series float)
c (series float)
v (series float)
LabelArgs
Fields:
text_color (series color) : Text color.
bg_color (series color) : Color of the label border and arrow.
text_font_family (series string) : The font family of the text. Optional. The default value is font.family_default. Possible values: font.family_default, font.family_monospace.
xloc (series string) : See description of x argument. Possible values: xloc.bar_index and xloc.bar_time. Default is xloc.bar_index.
yloc (series string) : Possible values are yloc.price, yloc.abovebar, yloc.belowbar. If yloc=yloc.price, y argument specifies the price of the label position. If yloc=yloc.abovebar, label is located above bar. If yloc=yloc.belowbar, label is located below bar. Default is yloc.price.
style (series string) : Label style. Possible values: label.style_none, label.style_xcross, label.style_cross, label.style_triangleup, label.style_triangledown, label.style_flag, label.style_circle, label.style_arrowup, label.style_arrowdown, label.style_label_up, label.style_label_down, label.style_label_left, label.style_label_right, label.style_label_lower_left, label.style_label_lower_right, label.style_label_upper_left, label.style_label_upper_right, label.style_label_center, label.style_square, label.style_diamond, label.style_text_outline. Default is label.style_label_down.
size (series string) : Label size. Possible values: size.auto, size.tiny, size.small, size.normal, size.large, size.huge. Default value is size.normal.
text_align (series string) : Label text alignment. Possible values: text.align_left, text.align_center, text.align_right. Default value is text.align_center.
Label
Fields:
point (chart.point) : The Label coordinates
txt (series string) : Label text. Default is empty string.
tooltip (series string) : Hover to see tooltip label.
hidden (series bool)
plot (series label) : The label object to be added and plotted via draw()
LineArgs
Fields:
line_color (series color) : Line color.
style (series string) : Line style. Possible values: line.style_solid, line.style_dotted, line.style_dashed, line.style_arrow_left, line.style_arrow_right, line.style_arrow_both.
width (series int) : Line width in pixels.
xloc (series string) : Possible values: xloc.bar_index and xloc.bar_time. Default is xloc.bar_index.
extend (series string) : f extend=extend.none, draws segment starting at point (x1, y1) and ending at point (x2, y2). If extend is equal to extend.right or extend.left, draws a ray starting at point (x1, y1) or (x2, y2), respectively. If extend=extend.both, draws a straight line that goes through these points. Default value is extend.none.
Line
Fields:
start (chart.point) : starting point of the line
end (chart.point)
hidden (series bool)
plot (series line) : The line object to be added and plotted via draw()
LineFill
Fields:
a (Line) : The first Line object
b (Line) : The second Line object
fill_color (series color) : The color used to fill the space between the lines.
flip_support (Line) : An additional Line that holds a flipped b support line (linefills are always drawn between line starts and line ends)
plot (series linefill) : The linefill object to be added and plotted via draw()
PolyLineArgs
Fields:
line_color (series color) : The color of the line segments. Optional. The default is color.gray.
fill_color (series color) : The fill color of the polyline. Optional. The default is na.
style (series string) : The style of the polyline. Possible values: line.style_solid, line.style_dotted, line.style_dashed, line.style_arrow_left, line.style_arrow_right, line.style_arrow_both. Optional. The default is line.style_solid.
width (series int) : The width of the line segments, expressed in pixels. Optional. The default is 1.
xloc (series string) : Determines the field of the chart.point objects in the points array that the polyline will use for its x-coordinates. If xloc.bar_index, the polyline will use the index field from each point. If xloc.bar_time, it will use the time field. Optional. The default is xloc.bar_index.
PolyLine
Fields:
points (array) : point array data of the polyline
curved (series bool) : Line color. If true, the drawing will connect all points from the points array using curved line segments. Optional. The default is false.
closed (series bool) : Line color. If true, the drawing will also connect the first point to the last point from the points array, resulting in a closed polyline. Optional. The default is false.
hidden (series bool)
plot (series polyline) : The polyline object to be added and plotted via draw()
CenterLabel
Fields:
center_label (Label) : The generated, centered Label
source_line (Line)
source_polyline (PolyLine)
BoxArgs
Fields:
border_color (series color) : Color of the four borders. Optional. The default is color.blue.
border_width (series int) : Width of the four borders, in pixels. Optional. The default is 1 pixel.
border_style (series string) : Style of the four borders. Possible values: line.style_solid, line.style_dotted, line.style_dashed. Optional. The default value is line.style_solid.
bg_color (series color) : Background color of the box. Optional. The default is color.blue.
xloc (series string) : Determines whether the arguments to 'left' and 'right' are a bar index or a time value. If xloc = xloc.bar_index, the arguments must be a bar index. If xloc = xloc.bar_time, the arguments must be a UNIX time. Possible values: xloc.bar_index and xloc.bar_time. Optional. The default is xloc.bar_index.
extend (series string) : When extend.none is used, the horizontal borders start at the left border and end at the right border. With extend.left or extend.right, the horizontal borders are extended indefinitely to the left or right of the box, respectively. With extend.both, the horizontal borders are extended on both sides. Optional. The default value is extend.none.
BoxTextArgs
Fields:
text_color (series color) : The color of the text. Optional. The default is color.black.
text_size (series string) : The size of the text. An optional parameter, the default value is size.auto. Possible values: size.auto, size.tiny, size.small, size.normal, size.large, size.huge.
text_halign (series string) : The horizontal alignment of the box's text. Optional. The default value is text.align_center. Possible values: text.align_left, text.align_center, text.align_right.
text_valign (series string) : The vertical alignment of the box's text. Optional. The default value is text.align_center. Possible values: text.align_top, text.align_center, text.align_bottom.
text_wrap (series string) : Defines whether the text is presented in a single line, extending past the width of the box if necessary, or wrapped so every line is no wider than the box itself (and clipped by the bottom border of the box if the height of the resulting wrapped text is higher than the height of the box). Optional. The default value is text.wrap_none. Possible values: text.wrap_none, text.wrap_auto.
text_font_family (series string) : The font family of the text. Optional. The default value is font.family_default. Possible values: font.family_default, font.family_monospace.
Box
Fields:
left_top (chart.point) : top-left corner of the box
right_bottom (chart.point) : bottom-right corner of the box
txt (series string) : The text to be displayed inside the box. Optional. The default is empty string.
hidden (series bool)
plot (series box) : The box object to be added and plotted via draw()
ATM Option Selling StrategyATM Option Selling Strategy – Explained
This strategy is designed for intraday option selling based on the 9/15 EMA crossover, 50/80 MA trend filter, and RSI 50 level. It ensures that all trades are exited before market close (3:24 PM IST).
. Indicators Used:
9 EMA & 15 EMA → For short-term trend identification.
50 MA & 80 MA → To determine the overall trend.
RSI (14) → To confirm momentum (above or below 50 level).
2. Entry Conditions:
🔴 Sell ATM Call (CE) when:
Price is below 50 & 80 MA (Bearish trend).
9 EMA crosses below 15 EMA (Short-term trend turns bearish).
RSI is below 50 (Momentum confirms weakness).
🟢 Sell ATM Put (PE) when:
Price is above 50 & 80 MA (Bullish trend).
9 EMA crosses above 15 EMA (Short-term trend turns bullish).
RSI is above 50 (Momentum confirms strength).
3. Position Sizing & Risk Management:
Sell 375 quantity per trade (Lot size).
50-Point Stop Loss → If option premium moves against us by 50 points, exit.
50-Point Take Profit → If option premium moves in our favor by 50 points, book profit.
Exit all trades at 3:24 PM IST → No overnight positions.
4. Exit Conditions:
✅ Stop Loss or Take Profit Hits → Automatically exits based on a 50-point move.
✅ Time-Based Exit at 3:24 PM → Ensures no open positions at market close.
Why This Works?
✔ Trend Confirmation → 50/80 MA ensures we only sell options in the direction of the market trend.
✔ Momentum Confirmation → RSI prevents entering weak trades.
✔ Controlled Risk → SL and TP protect against large losses.
✔ No Overnight Risk → All trades close before market close.
OP FOREX Week Days LevelsOP FOREX Week Days Levels Indicator
The OP FOREX Week Days Levels indicator is a specialized technical tool designed to analyze key support and resistance levels based on unique numerical patterns. Developed using advanced Pine Script logic, this indicator caters to traders seeking a fresh perspective in market analysis, particularly for gold price movements.
How Does the Indicator Work?
The indicator identifies support and resistance levels based on daily numerical patterns:
Monday: Levels are determined using numbers whose digits sum to 2 or 7 (e.g., 11 → 1+1=2, 16 → 1+6=7).
Tuesday: Levels are based on numbers whose digits sum to 3 or 6.
Wednesday and Thursday: Levels are calculated using numbers whose digits sum to 4 or 5.
These mathematical principles provide traders with unique, predictive insights into market behavior.
Levels are updated automatically at the beginning of each trading day, except Friday.
Features:
✔ Unique Calculations – Uses innovative, day-specific numerical patterns.
✔ Daily Auto-Updates – Automatically refreshes levels for precision in daily trading.
✔ User-Friendly Interface – Simple and intuitive design for easy application.
✔ Gold-Specific Analysis – Optimized for analyzing price movements in the gold market.
How to Use the Indicator?
Load the indicator on a 15-minute timeframe chart.
Observe the displayed levels corresponding to daily numerical patterns.
Incorporate these levels into your trading strategy, combining them with price action analysis for maximum efficiency.
⚠ Disclaimer:
This indicator is a technical analysis tool and does not guarantee profits. It is recommended to use this indicator alongside robust risk management strategies.
TVC:GOLD
Nifty 1H Pure Supertrend + EMA StrategyThis is weekly Nifty Strategy. Every Entry exit based on Closing of 1HR TF.
For Long Entry condition- Sell PE of 40Delta and Buy PE of 25 delta.
For Short Entry Condition - Sell CE of 40D and buy CE of 25D.
Exit - If ST turns Red for Long and Green for Short Entry.
If Entry Signal on Thurs or Fri - Sell Current Week Expiry option.
If Entry Signal on Mon, Tue of Wed sell Next Week Expiry Option.
Moving Average Crossover ScannerThis is a scanner for Multiple Indicators like MA Cross, MACD, RSI, Adx. You can get clear market trend data by using it. Enjoy the Script!
ISSU_LevelMonthly, weekly, daily level
Quarter session
EMA 20,50
Daily close level
IST 10:30am Level
Math by Thomas FVG📌 Math by Thomas FVG – Fair Value Gap Detector
Overview:
The Math by Thomas FVG indicator automatically detects Fair Value Gaps (FVGs) using a three-candle logic. FVGs represent price inefficiencies where the first candle’s high/low does not overlap with the third candle’s low/high, creating a gap. This tool helps traders identify potential reversal or continuation zones, providing valuable insights into market structure and price action.
🔹 How It Works:
Bullish FVG:
Occurs when the current candle’s low is above the high of the candle two bars ago.
A green-shaded box marks the bullish FVG, highlighting a potential support zone.
Bearish FVG:
Occurs when the current candle’s high is below the low of the candle two bars ago.
A red-shaded box marks the bearish FVG, indicating a potential resistance zone.
Gap Filling Logic:
The indicator automatically removes FVGs once they are filled by price action, keeping the chart clean and relevant.
Bullish FVGs are removed when close ≤ the box's top.
Bearish FVGs are removed when close ≥ the box's bottom.
⚙️ Customization Options:
Bullish FVG Color: Choose the color for bullish FVGs.
Bearish FVG Color: Choose the color for bearish FVGs.
Max Box Count: The indicator dynamically manages up to 50 FVG boxes, ensuring optimal chart performance.
✅ Use Cases:
Identify price inefficiencies for potential entries and exits.
Combine with Order Blocks, support/resistance, or volume analysis for confirmation.
Useful for Smart Money Concept (SMC) and price action traders.
🔥 Enhance your trading accuracy with the Math by Thomas FVG indicator and gain insights into price inefficiencies! 🚀
Math by Thomas Order Blocks🔥 Description:
🚀 Math by Thomas Order Blocks is a precision tool for Smart Money Concept (SMC) and price action traders, designed to automatically detect Bullish and Bearish Order Blocks (OBs). It highlights key institutional trading zones where large orders are placed, helping you identify potential reversal and continuation areas.
⚙️ Key Features:
✅ Automatic Order Block Detection:
Detects Bearish OBs when price sharply reverses after a significant bullish move.
Identifies Bullish OBs following a sharp reversal from a bearish push.
✅ Dynamic Sensitivity & Volume Filter:
Sensitivity Control: Customize OB detection precision.
Minimum Volume Filter: Ensures OBs form only on significant volume spikes.
✅ Flexible OB Mitigation:
Choose between "Close" or "Wick" mitigation for OB invalidation.
Mitigated OBs are automatically removed from the chart.
✅ Adaptive Swing & Price Change Detection:
Adjusts OB detection logic based on timeframe for flexibility.
Uses adaptive rate of change (ROC) calculations to spot momentum shifts.
✅ Visual Customization:
OBs are displayed as shaded boxes with configurable background and border colors.
Bullish OBs = Green (support zones).
Bearish OBs = Red (resistance zones).
✅ Alerts for OB Touch:
Get real-time alerts when price touches a Bullish or Bearish OB.
Helps you catch potential reversal points without constant chart monitoring.
📊 How It Works:
Bullish OB Logic:
Detected when price crosses over a positive momentum threshold (ROC) with high volume.
Plots a green OB box from the low of the swing candle.
Bearish OB Logic:
Identified when price crosses under a negative momentum threshold with high volume.
Plots a red OB box from the high of the swing candle.
Mitigation Rules:
OBs are removed once invalidated by price action based on your chosen mitigation type (Close or Wick).
📈 Usage Tips:
Use Bullish OBs as potential support areas for buy entries.
Treat Bearish OBs as resistance zones for sell setups.
Combine with Fair Value Gaps, volume profile, and RSI for confluence.
Adjust sensitivity and volume filters to fine-tune OB detection.
✅ Chart Example:
The script displays:
Bullish OBs in green, marking potential support zones.
Bearish OBs in red, indicating resistance zones.
Real-time alerts when price touches OBs.
🔥 Why Use This Indicator?
Designed for intraday and swing traders aiming to identify institutional trading zones.
Helps you spot reversal and continuation setups with precision.
Ideal for Smart Money Concept (SMC), price action, and order flow traders.
TorgomerHello traders and subscribers!
We’re pleased to present Torgomer – a premium invite-only indicator developed to offer a nuanced, probability-based view of market structure.
At its core, Torgomer visualizes multiple dynamic price channels derived from customized normal (Gaussian) distributions. These distributions are used to highlight zones of statistical likelihood around price, helping traders assess where price is most likely and least likely to travel, based on historical volatility patterns.
🔍 What Torgomer does:
Draws multi-level probability channels around price using layered Gaussian models.
The blue-to-yellow channel captures the price range with the highest observed frequency (~80%, tuned from the standard 68%).
Breakouts beyond these zones (into red or green areas) are statistically rare under default settings and may help identify potential overextensions.
💡 What makes it different:
Most public indicators that use Gaussian or Bollinger-style distributions rely on static parameters or a single layer of analysis. Torgomer is unique in that it:
Uses multiple overlapping Gaussian curves to adapt dynamically to market regimes.
Applies custom-tuned probability thresholds, which are optimized to reflect real-world price behavior across different market types (ranging, trending, volatile).
Avoids reactive recalculation that can lead to misleading channels; instead, it anchors its distributions to a statistically-informed baseline.
🚀 Who it’s for:
Torgomer is designed for traders who value quantitative structure in their charts – whether they’re scalping short-term moves or positioning for larger swings. It’s especially useful for those seeking objective context around price movement, rather than reactive or lagging indicators.
⚠️ Note: This script does not provide trading signals or guarantees of performance. It is a statistical visualization tool meant to be used as part of a broader trading system and risk management framework.
If you’re interested in accessing Torgomer, please request access via the script page or reach out directly for more information.
RS++ High Beta Majors Allocation | viResearchRS++ High Beta Majors Allocation | viResearch
Conceptual Foundation and Innovation
The "RS++ High Beta Majors Allocation" is a next-generation portfolio rotation algorithm designed to capture alpha from high-volatility (high-beta) crypto assets. Building on the RS+ framework, this strategy expands the asset pool beyond BTC, ETH, and SOL to include newer and more volatile contenders like SUI and XRP. The goal is to rotate dynamically among these five majors—allocating to the strongest trending asset while minimizing exposure during broad-market weakness.
The strategy introduces enhanced comparative scoring using a multi-layered relative strength matrix that accounts for cross-asset momentum in real-time. Combined with a regime-based trend filter, it adapts not only to market leadership but also to prevailing risk conditions, significantly improving capital efficiency over traditional buy-and-hold strategies.
Technical Composition and Calculation
At the heart of the RS++ model lies a sophisticated five-asset ratio matrix. Each asset is evaluated against the others using relative price ratios, and each pair is scored through a hybrid strength model based on universal trend filters and statistical thresholds.
Expanded Universe: The script evaluates BTC, ETH, SOL, SUI, and XRP—each chosen for their liquidity and volatility profile, enhancing the potential for outperformance.
Relative Strength Matrix: A 5x5 matrix compares all assets against one another to determine momentum dominance. The asset with the highest cumulative score is considered the dominant major.
Trend Regime Filter: Before allocation, both the market regime (via BTC or a custom source) and the individual asset must pass trend confirmation to qualify for inclusion, reducing whipsaw exposure.
Equity Tracking: A real-time system equity line tracks portfolio performance from a custom user-defined start date.
Drawdown Measurement: Maximum drawdown is computed in real-time to assess risk exposure.
Performance Metrics
The script measures key quantitative metrics to evaluate performance robustness:
Max Drawdown: Assesses capital risk and largest equity dip from peak to trough.
Sharpe/Sortino/Omega Ratios (optional in previous versions): Can be adapted for future inclusion.
ROC-Based Returns: Allocation logic and equity growth are tied to ROC (rate of change), making it highly responsive to price action.
User Interface and Features
This version introduces user-centric customization and quality-of-life improvements:
Asset Toggle via Tickers: Simply switch any ticker to "USDT" to exclude it from the rotation universe.
Equity Chart Overlay: Real-time equity plotted with color-coded trend backgrounds for easy interpretation of active holdings.
Dominant Asset Panel: A dashboard displays the currently allocated asset and scores of all assets for comparative insights.
Usage Recommendation: The script includes an embedded suggestion to pair this strategy with the Crypto Market Confidence Period indicator for even better macro-filtering.
Timeframe Guardrail: A soft enforcement feature suggests usage on the 1D timeframe for optimal accuracy.
Practical Applications
This strategy is ideal for traders who prefer a tactical, risk-managed approach to high-beta crypto portfolios. Use cases include:
Active Rotation Management: Switches capital between the strongest trending assets to capture momentum across cycles.
Macro Regime Sensitivity: The trend filter avoids allocation during weak macro trends, moving to cash and preserving equity.
High-Volatility Environments: Particularly effective in bull phases or during sector rotations where traditional assets underperform.
Strategic Value and Advantages
The RS++ script blends alpha-generation with institutional-level risk filtering, making it a powerful tool for active portfolio managers. The expanded universe allows for exposure to emerging market leaders while the scoring and filtering mechanism ensures trades are made with precision. Real-time equity visualization and intuitive alerts help traders stay aligned with system output without constant screen-watching.
Summary and Usage Tips
The "RS++ High Beta Majors Allocation" script offers a versatile and powerful method for crypto portfolio allocation with an emphasis on dynamic strength, risk control, and adaptability. Traders are encouraged to:
Use the recommended 1D timeframe for stability.
Pair the strategy with macro filters like the Crypto Market Confidence Period.
As always, backtest thoroughly and remember that no model guarantees future performance. Use this tool as part of a broader risk-managed trading framework.
AltSeasonality - MTFAltSeason is more than a brief macro market cycle — it's a condition. This indicator helps traders identify when altcoins are gaining strength relative to Bitcoin dominance, allowing for more precise entries, exits, and trade selection across any timeframe.
The key for altcoin traders is that the lower the timeframe, the higher the alpha.
By tracking the TOTAL3/BTC.D ratio — a real-time measure of altcoin strength versus Bitcoin — this tool highlights when capital is rotating into or out of altcoins. It works as a bias filter, helping traders avoid low-conviction setups, especially in chop or during BTC-led conditions.
________________________________________________________________________
It works well on the 1D chart to validate swing entries during strong altcoin expansion phases — especially when TOTAL3/BTC.D breaks out while BTCUSD consolidates.
On the 4H or 1D chart, rising TOTAL3/BTC.D + a breakout on your altcoin = high-conviction setup. If BTC is leading, fade the move or reduce size. Consider pairing with the Accumulation - Distribution Candles, optimized for the 1D (not shown).
🔍 Where this indicator really excels, however, is on the 1H and 15M charts, where short-term traders need fast bias confirmation before committing to a move. Designed for scalpers, intraday momentum traders, and tactical swing setups.
Use this indicator to confirm whether an altcoin breakout is supported by broad market flow — or likely to fail due to hidden BTC dominance pressure.
________________________________________________________________________
🧠 How it works:
- TOTAL3 = market cap of altcoins (excl. BTC + ETH)
- BTC.D = Bitcoin dominance as % of total market cap
- TOTAL3 / BTC.D = a normalized measure of altcoin capital strength vs Bitcoin
- BTCUSD = trend baseline and comparison anchor
The indicator compares these forces side-by-side, using a normalized dual-line ribbon. There is intentionally no "smoothing".
When TOTAL3/BTC.D is leading, the ribbon shifts to an “altseason active” phase. When BTCUSD regains control, the ribbon flips back into BTC dominance — signaling defensive posture.
________________________________________________________________________
💡 Strategy Example:
On the 1H chart, a crossover into altseason → check the 15M chart for confirmation. Consider adding the SUPeR TReND 2.718 for confirmation (not shown). If both align, you have trend + flow confluence. If BTCUSD is leading or ribbon is mixed, reduce exposure or wait for confirmation. Further confirmation via Volume breakouts in your specific coin.
⚙️ Features:
• MTF source selection (D, 1H, 15M)
• Normalized ribbon (TOTAL3/BTC.D vs BTCUSD)
• Cross-aware fill shading
• Custom color and transparency controls
• Optional crossover markers
• Midline + zone guides (0.2 / 0.5 / 0.8)
Estratégia Original com SL/TPA powerful TradingView indicator combining:
✅ Supertrend (trend filter)
✅ RSI 2 (early reversals)
✅ SMA 4/9 crossover (momentum confirmation)
✅ Auto Stop Loss & Take Profit (ATR-based or fixed)
🔥 Key Features:
Buy Signals (↑): Supertrend green + RSI 2 > 30 + SMA 4 > SMA 9
Sell Signals (↓): Supertrend red + SMA 4 < SMA 9 (low false signals)
Risk Management: Dynamic SL (1.5x ATR) & TP (2x ATR)
Clean Visualization: Entry/exit arrows + SL/TP lines
📊 Ideal For: Crypto, Forex, and Stocks (H1/Daily timeframes)
🎯 Why Use It?
Aggressive entries with RSI 2 + SMA 4
Conservative exits to lock profits
Fully customizable settings
IBAC Strategy - ZygoraIBAC - Intrinsic Binary Averaging based Contrarian
A contrarian scalping strategy in the futures market, designed to stabilize market efficiency by capitalizing on price reversals. The strategy has no stop loss, instead employing a cascading approach—adding to the position size each time the price moves in the wrong direction—and closes the full position when the target profit is reached. Without delving into intricate details, the strategy adheres to the following basic rules:
Position sizing is determined by a customized indicator based on cumulative reversal probability, which also contributes to identifying the signal’s direction.
Direction is determined by the Moving Average: price above the Moving Average signals a Short position, while price below it signals a Long position.
The threshold for entries and exits is adjusted based on the range between extremes (highest high minus lowest low) over the past 100 historical bars.
The next limit entry is placed at a distance equal to the threshold length below (for Long) or above (for Short) the current average price.
The next target profit is set at a distance equal to the threshold length above (for Long) or below (for Short) the current average price.
A signal is triggered when there is a sudden price movement detected by the RSI (Relative Strength Index).
When a signal is identified, the strategy starts with a risk-reward ratio (RR) of 1:1. However, the RR worsens as the cascading steps—referred to as inventory I—increase, because the average entry price shifts unfavorably with each new position added. To mitigate the risk of liquidation, the strategy aims to hold a smaller inventory amount over time. This is achieved by using a multiple threshold multiplier: when a specified inventory limit is reached, the threshold for the next entry increases, and the threshold for the next target profit decreases. As a result, with higher inventory levels, the strategy accepts a lower RR but increases the likelihood of hitting the target profit.
The target profit is always set above the average entry price (for Long) or below it (for Short), ensuring that the strategy eventually closes at a profit. This leads to a 100% win rate but comes with relatively high drawdowns due to the absence of a stop loss and the cascading nature of the positions. The strategy performs best in a consolidation market in 1 minute timeframe, where price tends to oscillate within a range, allowing the contrarian approach to capitalize on reversals. The strategy’s name is derived from its customized indicator for position sizing, which leverages cumulative reversal probability to optimize position sizes and assist in determining the signal’s direction.
Manual Trade Ledger# Manual Options Trade Journal – Pine Script
This project is a Pine Script implementation for TradingView that allows users to manually log options trades into a live table overlay on a chart.
## ✨ Features
- 📥 Manual entry of ticker, premium, contracts, strike, expiry, notes
- 📈 Auto-filled live data: timestamp, price, and % change since first log
- 🧾 Tabular logging for trade journaling and exporting to Google Sheets
- 🔧 Fully customizable and designed to support product experimentation
## 🎯 Use Case
This project was built to support a real-world trading workflow for options traders who:
- Prefer to manually log trades while watching charts
- Want a visual, copyable ledger that evolves in real-time
- Want to later analyze entries/exits in spreadsheets or dashboards
## 🛠 How It Works
1. Toggle the `Log Trade` switch inside TradingView’s indicator settings
2. Fill in your trade metadata (ticker, premium, etc.)
3. The script captures timestamp, price, and calculates % change
4. Each new trade adds a row to the table (up to 50 max)