Looking for indicator that plots 4 horizontal lines on the intraday timeframe

ihmdg

New member
Hello everyone, looking for an indicator that plots 4 horizontal lines that works on all intraday timeframes. First plot line starts at 10am, second plot line starts at 11am, third plot line starts at 1pm, and fourth plot line starts at 2pm. All 4 lines draw to the end of trading hour. Indicator should have an option to turn on/off plots on all previous days. I search the forums but can't find one. Would any experts in this be so kind to create one? Thanks in advance.
Fp_GlmZWAAAJTN7


I have this code but it doesn't work. Can anyone take a look to see what's not working?

Code:
# Define the input parameters
input showPreviousDays = yes; # option to show/hide previous days' lines
input line1Start = "10:00"; # time for first line to start (format: "HH:MM")
input line2Start = "11:00"; # time for second line to start (format: "HH:MM")
input line3Start = "13:00"; # time for third line to start (format: "HH:MM")
input line4Start = "14:00"; # time for fourth line to start (format: "HH:MM")
input lineColor = color.blue; # color of the lines
input lineWeight = 2; # weight of the lines

# Calculate the line times based on the regular trading hours
def regularSessionStart = secondsFromTime(0930); # 9:30 AM EST
def line1Time = regularSessionStart + secondsFromTime(line1Start + ":00");
def line2Time = regularSessionStart + secondsFromTime(line2Start + ":00");
def line3Time = regularSessionStart + secondsFromTime(line3Start + ":00");
def line4Time = regularSessionStart + secondsFromTime(line4Start + ":00");
def regularSessionEnd = secondsFromTime(1600); # 4:00 PM EST

# Plot the lines
plot line1 = if showPreviousDays or getDay() == getLastDay() then line1Time else double.nan;
line1.SetStyle(curve.FIRM);
line1.SetDefaultColor(lineColor);
line1.SetLineWeight(lineWeight);

plot line2 = if showPreviousDays or getDay() == getLastDay() then line2Time else double.nan;
line2.SetStyle(curve.FIRM);
line2.SetDefaultColor(lineColor);
line2.SetLineWeight(lineWeight);

plot line3 = if showPreviousDays or getDay() == getLastDay() then line3Time else double.nan;
line3.SetStyle(curve.FIRM);
line3.SetDefaultColor(lineColor);
line3.SetLineWeight(lineWeight);

plot line4 = if showPreviousDays or getDay() == getLastDay() then line4Time else double.nan;
line4.SetStyle(curve.FIRM);
line4.SetDefaultColor(lineColor);
line4.SetLineWeight(lineWeight);

# Extend the lines to the end of the trading day
line1.SetExtend(true);
line2.SetExtend(true);
line3.SetExtend(true);
line4.SetExtend(true);

# Define a function to get the last trading day's date
def getLastDay() {
    # Get the current date and time in milliseconds
    def currentDate = GetYYYYMMDD();
    def currentTime = GetTime();
    def currentDateTime = currentDate * 1000 + currentTime;
    
    # Look for the last trading day's date
    def lastDay = currentDate - 1;
    while (GetDay() != lastDay && lastDay >= GetCurrentYear() * 10000) {
        lastDay--;
    }Iam
    return lastDay;
}

FqBV9XCWYAAZS9g
 
Last edited by a moderator:
Solution
Hello everyone, looking for an indicator that plots 4 horizontal lines that works on all intraday timeframes. First plot line starts at 10am, second plot line starts at 11am, third plot line starts at 1pm, and fourth plot line starts at 2pm. All 4 lines draw to the end of trading hour. Indicator should have an option to turn on/off plots on all previous days. I search the forums but can't find one. Would any experts in this be so kind to create one? Thanks in advance.
Fp_GlmZWAAAJTN7


I have this code but it doesn't work. Can anyone take a look to see what's not working?

Code:
# Define the input parameters
input showPreviousDays = yes; # option to show/hide previous days'...
Hello everyone, looking for an indicator that plots 4 horizontal lines that works on all intraday timeframes. First plot line starts at 10am, second plot line starts at 11am, third plot line starts at 1pm, and fourth plot line starts at 2pm. All 4 lines draw to the end of trading hour. Indicator should have an option to turn on/off plots on all previous days. I search the forums but can't find one. Would any experts in this be so kind to create one? Thanks in advance.
Fp_GlmZWAAAJTN7


I have this code but it doesn't work. Can anyone take a look to see what's not working?

Code:
# Define the input parameters
input showPreviousDays = yes; # option to show/hide previous days' lines
input line1Start = "10:00"; # time for first line to start (format: "HH:MM")
input line2Start = "11:00"; # time for second line to start (format: "HH:MM")
input line3Start = "13:00"; # time for third line to start (format: "HH:MM")
input line4Start = "14:00"; # time for fourth line to start (format: "HH:MM")
input lineColor = color.blue; # color of the lines
input lineWeight = 2; # weight of the lines

# Calculate the line times based on the regular trading hours
def regularSessionStart = secondsFromTime(0930); # 9:30 AM EST
def line1Time = regularSessionStart + secondsFromTime(line1Start + ":00");
def line2Time = regularSessionStart + secondsFromTime(line2Start + ":00");
def line3Time = regularSessionStart + secondsFromTime(line3Start + ":00");
def line4Time = regularSessionStart + secondsFromTime(line4Start + ":00");
def regularSessionEnd = secondsFromTime(1600); # 4:00 PM EST

# Plot the lines
plot line1 = if showPreviousDays or getDay() == getLastDay() then line1Time else double.nan;
line1.SetStyle(curve.FIRM);
line1.SetDefaultColor(lineColor);
line1.SetLineWeight(lineWeight);

plot line2 = if showPreviousDays or getDay() == getLastDay() then line2Time else double.nan;
line2.SetStyle(curve.FIRM);
line2.SetDefaultColor(lineColor);
line2.SetLineWeight(lineWeight);

plot line3 = if showPreviousDays or getDay() == getLastDay() then line3Time else double.nan;
line3.SetStyle(curve.FIRM);
line3.SetDefaultColor(lineColor);
line3.SetLineWeight(lineWeight);

plot line4 = if showPreviousDays or getDay() == getLastDay() then line4Time else double.nan;
line4.SetStyle(curve.FIRM);
line4.SetDefaultColor(lineColor);
line4.SetLineWeight(lineWeight);

# Extend the lines to the end of the trading day
line1.SetExtend(true);
line2.SetExtend(true);
line3.SetExtend(true);
line4.SetExtend(true);

# Define a function to get the last trading day's date
def getLastDay() {
    # Get the current date and time in milliseconds
    def currentDate = GetYYYYMMDD();
    def currentTime = GetTime();
    def currentDateTime = currentDate * 1000 + currentTime;
  
    # Look for the last trading day's date
    def lastDay = currentDate - 1;
    while (GetDay() != lastDay && lastDay >= GetCurrentYear() * 10000) {
        lastDay--;
    }Iam
    return lastDay;
}

FqBV9XCWYAAZS9g

Rather than trying to fix that code, this should work instead. You can limit the display at the input screen to the limit input or show all. It includes bubbles to show the time and price of each line displayed

The image show the last display of each time, with the limit chosen of 1.

Screenshot-2023-02-28-072620.png

Code:
#LinePlots_Times_Price_ExtRight_Bubbles

input display_lines = {default limit, all};
input limit = 1;
input Time1 = 1000;
input Time2 = 1100;
input Time3 = 1300;
input Time4 = 1400;
input price = open;

def T1  = if IsNaN(close) then T1[1] else if SecondsFromTime(Time1) == 0 then price else T1[1];
def T2  = if IsNaN(close) then T2[1] else if SecondsFromTime(Time2) == 0 then price else T2[1];
def T3  = if IsNaN(close) then T3[1] else if SecondsFromTime(Time3) == 0 then price else T3[1];
def T4  = if IsNaN(close) then T4[1] else if SecondsFromTime(Time4) == 0 then price else T4[1];

def Count1 = CompoundValue(1, if IsNaN(Count1[1]) then 0 else if T1 != T1[1] then Count1[1] + 1 else Count1[1], 0);
def Count2 = CompoundValue(1, if IsNaN(Count2[1]) then 0 else if T2 != T2[1] then Count2[1] + 1 else Count2[1], 0);
def Count3 = CompoundValue(1, if IsNaN(Count3[1]) then 0 else if T3 != T3[1] then Count3[1] + 1 else Count3[1], 0);
def Count4 = CompoundValue(1, if IsNaN(Count4[1]) then 0 else if T4 != T4[1] then Count4[1] + 1 else Count4[1], 0);


plot L1 = if display_lines == display_lines.limit and HighestAll(Count1) - Count1 <= limit - 1 then T1 else if display_lines == display_lines.all then T1 else Double.NaN;
plot L2 = if display_lines == display_lines.limit and HighestAll(Count2) - Count2 <= limit - 1 then T2 else if display_lines == display_lines.all then T2 else Double.NaN;
plot L3 = if display_lines == display_lines.limit and HighestAll(Count3) - Count3 <= limit - 1 then T3 else if display_lines == display_lines.all then T3 else Double.NaN;
plot L4 = if display_lines == display_lines.limit and HighestAll(Count4) - Count4 <= limit - 1 then T4 else if display_lines == display_lines.all then T4 else Double.NaN;

L1.SetPaintingStrategy(PaintingStrategy.HORIZONTAL);
L2.SetPaintingStrategy(PaintingStrategy.HORIZONTAL);
L3.SetPaintingStrategy(PaintingStrategy.HORIZONTAL);
L4.SetPaintingStrategy(PaintingStrategy.HORIZONTAL);

DefineGlobalColor("L", Color.CYAN);
L1.SetDefaultColor(GlobalColor("L"));
L2.SetDefaultColor(GlobalColor("L"));
L3.SetDefaultColor(GlobalColor("L"));
L4.SetDefaultColor(GlobalColor("L"));

input showbubbles = yes;
input baroffset   = 0;

DefineGlobalColor("B", Color.GRAY);
AddChartBubble(showbubbles and (T1 != T1[-1] or BarNumber() == HighestAll(BarNumber() - baroffset)), L1, asprice(Time1) + ": " + AsDollars(T1), GlobalColor("B"));
AddChartBubble(showbubbles and (T2 != T2[-1] or BarNumber() == HighestAll(BarNumber() - baroffset)), L2, asprice(Time2) + ": " + AsDollars(T2), GlobalColor("B"));
AddChartBubble(showbubbles and (T3 != T3[-1] or BarNumber() == HighestAll(BarNumber() - baroffset)), L3, asprice(Time3) + ": " + AsDollars(T3), GlobalColor("B"));
AddChartBubble(showbubbles and (T4 != T4[-1] or BarNumber() == HighestAll(BarNumber() - baroffset)), L4, asprice(Time4) + ": " + AsDollars(T4), GlobalColor("B"));
 
Last edited:
Solution
Rather than trying to fix that code, this should work instead. You can limit the display at the input screen to the limit input or show all. It includes bubbles to show the time and price of each line displayed

The image show the last display of each time, with the limit chosen of 1.
@SleepyZ Thank you. If I want the line to plot at 8:30am or 9:30am, what should I input? I try to input 9:30 but it doesn't work. It only works for exact hourly, like 9am, 10am, 11am, etc.
 
@SleepyZ Thank you. If I want the line to plot at 8:30am or 9:30am, what should I input? I try to input 9:30 but it doesn't work. It only works for exact hourly, like 9am, 10am, 11am, etc.

I have modified the above to allow you to enter other times than just on the hours.

Code:
#LinePlots_Times_Price_ExtRight_Bubbles

input display_lines = {default limit, all};
input limit = 1;
input Time1 = 1000;
input Time2 = 1100;
input Time3 = 1300;
input Time4 = 1400;
input price = open;

def T1  = if IsNaN(close) then T1[1] else if SecondsFromTime(Time1) == 0 then price else T1[1];
def T2  = if IsNaN(close) then T2[1] else if SecondsFromTime(Time2) == 0 then price else T2[1];
def T3  = if IsNaN(close) then T3[1] else if SecondsFromTime(Time3) == 0 then price else T3[1];
def T4  = if IsNaN(close) then T4[1] else if SecondsFromTime(Time4) == 0 then price else T4[1];

def Count1 = CompoundValue(1, if IsNaN(Count1[1]) then 0 else if T1 != T1[1] then Count1[1] + 1 else Count1[1], 0);
def Count2 = CompoundValue(1, if IsNaN(Count2[1]) then 0 else if T2 != T2[1] then Count2[1] + 1 else Count2[1], 0);
def Count3 = CompoundValue(1, if IsNaN(Count3[1]) then 0 else if T3 != T3[1] then Count3[1] + 1 else Count3[1], 0);
def Count4 = CompoundValue(1, if IsNaN(Count4[1]) then 0 else if T4 != T4[1] then Count4[1] + 1 else Count4[1], 0);


plot L1 = if display_lines == display_lines.limit and HighestAll(Count1) - Count1 <= limit - 1 then T1 else if display_lines == display_lines.all then T1 else Double.NaN;
plot L2 = if display_lines == display_lines.limit and HighestAll(Count2) - Count2 <= limit - 1 then T2 else if display_lines == display_lines.all then T2 else Double.NaN;
plot L3 = if display_lines == display_lines.limit and HighestAll(Count3) - Count3 <= limit - 1 then T3 else if display_lines == display_lines.all then T3 else Double.NaN;
plot L4 = if display_lines == display_lines.limit and HighestAll(Count4) - Count4 <= limit - 1 then T4 else if display_lines == display_lines.all then T4 else Double.NaN;

L1.SetPaintingStrategy(PaintingStrategy.HORIZONTAL);
L2.SetPaintingStrategy(PaintingStrategy.HORIZONTAL);
L3.SetPaintingStrategy(PaintingStrategy.HORIZONTAL);
L4.SetPaintingStrategy(PaintingStrategy.HORIZONTAL);

DefineGlobalColor("L", Color.CYAN);
L1.SetDefaultColor(GlobalColor("L"));
L2.SetDefaultColor(GlobalColor("L"));
L3.SetDefaultColor(GlobalColor("L"));
L4.SetDefaultColor(GlobalColor("L"));

input showbubbles = yes;
input baroffset   = 0;

DefineGlobalColor("B", Color.GRAY);
AddChartBubble(showbubbles and (T1 != T1[-1] or BarNumber() == HighestAll(BarNumber() - baroffset)), L1, asprice(Time1) + ": " + AsDollars(T1), GlobalColor("B"));
AddChartBubble(showbubbles and (T2 != T2[-1] or BarNumber() == HighestAll(BarNumber() - baroffset)), L2, asprice(Time2) + ": " + AsDollars(T2), GlobalColor("B"));
AddChartBubble(showbubbles and (T3 != T3[-1] or BarNumber() == HighestAll(BarNumber() - baroffset)), L3, asprice(Time3) + ": " + AsDollars(T3), GlobalColor("B"));
AddChartBubble(showbubbles and (T4 != T4[-1] or BarNumber() == HighestAll(BarNumber() - baroffset)), L4, asprice(Time4) + ": " + AsDollars(T4), GlobalColor("B"));
 
Is there a way I could modify this code to have it draw a horizontal line every hour?

This is meant to work on hourly times with options to show on today only, regular trading hours and optional prices. If the exact hourly time does not exist, it should use the next bars time.

Screenshot-2023-03-25-133639.png
Code:
#Horizonallines_Time_Input_Exists_or_Next_if_Missing
script hl {
    input Time1 = 1000;
    input ShowTodayOnly = yes;
    input price = open;
    input rth_only = yes;
    def x =
if ShowTodayOnly and GetDay() != GetLastDay()
then Double.NaN
else if SecondsFromTime(Time1) == 0
then SecondsFromTime(Time1) == 0 and SecondsTillTime(Time1) == 0
else if SecondsFromTime(Time1) != 0
then (SecondsFromTime(Time1)[1] < 0 and SecondsFromTime(Time1) > 0) or
     (SecondsFromTime(Time1) > 0 and SecondsFromTime(Time1)[1] > SecondsFromTime(Time1))
else  Double.NaN;
    def xx = if
                if rth_only
                then SecondsFromTime(0900) >= 0 and x
                else x
            then price
            else if
                if rth_only
                then
                   if tickvalue() == .01
                   then SecondsFromTime(1600) <= 0
                   else secondsfromTime(1700) <= 0
                else if tickvalue() == .01
                then secondsfromTime(1955) <= 0
                else secondsfromtime(2355) < 0
            then xx[1]
            else Double.NaN;
    plot xxx = xx;
}

input showtodayonly = no;
input price = open;
input rth_only = yes;

plot x0 = hl(0000, showtodayonly, price, rth_only);
plot x1 = hl(0100, showtodayonly, price, rth_only);
plot x2 = hl(0200, showtodayonly, price, rth_only);
plot x3 = hl(0300, showtodayonly, price, rth_only);
plot x4 = hl(0400, showtodayonly, price, rth_only);
plot x5 = hl(0500, showtodayonly, price, rth_only);
plot x6 = hl(0600, showtodayonly, price, rth_only);
plot x7 = hl(0700, showtodayonly, price, rth_only);
plot x8 = hl(0800, showtodayonly, price, rth_only);
plot x9 = hl(0900, showtodayonly, price, rth_only);
plot x10 = hl(1000, showtodayonly, price, rth_only);
plot x11 = hl(1100, showtodayonly, price, rth_only);
plot x12 = hl(1200, showtodayonly, price, rth_only);
plot x13 = hl(1300, showtodayonly, price, rth_only);
plot x14 = hl(1400, showtodayonly, price, rth_only);
plot x15 = hl(1500, showtodayonly, price, rth_only);
plot x16 = hl(1600, showtodayonly, price, rth_only);
plot x17 = hl(1700, showtodayonly, price, rth_only);
plot x18 = hl(1800, showtodayonly, price, rth_only);
plot x19 = hl(1900, showtodayonly, price, rth_only);
plot x20 = hl(2000, showtodayonly, price, rth_only);
plot x21 = hl(2100, showtodayonly, price, rth_only);
plot x22 = hl(2200, showtodayonly, price, rth_only);
plot x23 = hl(2300, showtodayonly, price, rth_only);

x0.setpaintingStrategy(paintingStrategy.HORIZONTAL);
x1.setpaintingStrategy(paintingStrategy.HORIZONTAL);
x2.setpaintingStrategy(paintingStrategy.HORIZONTAL);
x3.setpaintingStrategy(paintingStrategy.HORIZONTAL);
x4.setpaintingStrategy(paintingStrategy.HORIZONTAL);
x5.setpaintingStrategy(paintingStrategy.HORIZONTAL);
x6.setpaintingStrategy(paintingStrategy.HORIZONTAL);
x7.setpaintingStrategy(paintingStrategy.HORIZONTAL);
x8.setpaintingStrategy(paintingStrategy.HORIZONTAL);
x9.setpaintingStrategy(paintingStrategy.HORIZONTAL);
x10.setpaintingStrategy(paintingStrategy.HORIZONTAL);
x11.setpaintingStrategy(paintingStrategy.HORIZONTAL);
x12.setpaintingStrategy(paintingStrategy.HORIZONTAL);
x13.setpaintingStrategy(paintingStrategy.HORIZONTAL);
x14.setpaintingStrategy(paintingStrategy.HORIZONTAL);
x15.setpaintingStrategy(paintingStrategy.HORIZONTAL);
x16.setpaintingStrategy(paintingStrategy.HORIZONTAL);
x17.setpaintingStrategy(paintingStrategy.HORIZONTAL);
x18.setpaintingStrategy(paintingStrategy.HORIZONTAL);
x19.setpaintingStrategy(paintingStrategy.HORIZONTAL);
x20.setpaintingStrategy(paintingStrategy.HORIZONTAL);
x21.setpaintingStrategy(paintingStrategy.HORIZONTAL);
x22.setpaintingStrategy(paintingStrategy.HORIZONTAL);
x23.setpaintingStrategy(paintingStrategy.HORIZONTAL);
 
This is meant to work on hourly times with options to show on today only, regular trading hours and optional prices. If the exact hourly time does not exist, it should use the next bars time.
Crud, I said horizontal, I meant vertical. I'm happy to do the legwork if its just a matter of changing the code. If I change painting strategy to "vertical" will that do the trick?

Thanks @SleepyZ
 
Crud, I said horizontal, I meant vertical. I'm happy to do the legwork if its just a matter of changing the code. If I change painting strategy to "vertical" will that do the trick?

Thanks @SleepyZ

This seems to work with similar options that the horizontal line version had

Screenshot-2023-03-25-164947.png
Code:
#Verticallines_Time_Input_Exists_or_Next_if_Missing

script hl {
    input Time1 = 1000;
    input ShowTodayOnly = yes;
    input price = open;
    input rth_only = yes;
    def x = if ShowTodayOnly and GetDay() != GetLastDay()
            then Double.NaN
            else if SecondsFromTime(Time1) == 0
            then SecondsFromTime(Time1) == 0 and SecondsTillTime(Time1) == 0
            else if SecondsFromTime(Time1) != 0
            then (SecondsFromTime(Time1)[1] < 0 and SecondsFromTime(Time1) > 0) or
                 (SecondsFromTime(Time1) > 0 and
                  SecondsFromTime(Time1)[1] > SecondsFromTime(Time1))
            else  Double.NaN;
    def xx =  if
               if rth_only
               then if TickValue() == .01
                    then SecondsFromTime(0900) >= 0 and SecondsFromTime(1600) <= 0
                    else SecondsFromTime(0900) >= 0 and SecondsFromTime(1700) <= 0
               else if TickValue() == .01
                    then SecondsFromTime(0000) >= 0 and SecondsFromTime(1955) <= 0
                    else SecondsFromTime(0000) >= 0 and  SecondsFromTime(2355) <= 0
             then 1
             else Double.NaN;

    plot xxx = xx and x;
}

input showtodayonly = no;
input price = open;
input rth_only = yes;
DefineGlobalColor("v", Color.WHITE);
AddVerticalLine(hl(0000, showtodayonly, price, rth_only) == 1, " ", GlobalColor("V"), Curve.FIRM);
AddVerticalLine(hl(0100, showtodayonly, price, rth_only), " ", GlobalColor("V"), Curve.FIRM);
AddVerticalLine(hl(0200, showtodayonly, price, rth_only), " ", GlobalColor("V"), Curve.FIRM);
AddVerticalLine(hl(0300, showtodayonly, price, rth_only), " ", GlobalColor("V"), Curve.FIRM);
AddVerticalLine(hl(0400, showtodayonly, price, rth_only), " ", GlobalColor("V"), Curve.FIRM);
AddVerticalLine(hl(0500, showtodayonly, price, rth_only), " ", GlobalColor("V"), Curve.FIRM);
AddVerticalLine(hl(0600, showtodayonly, price, rth_only), " ", GlobalColor("V"), Curve.FIRM);
AddVerticalLine(hl(0700, showtodayonly, price, rth_only), " ", GlobalColor("V"), Curve.FIRM);
AddVerticalLine(hl(0800, showtodayonly, price, rth_only), " ", GlobalColor("V"), Curve.FIRM);
AddVerticalLine(hl(0900, showtodayonly, price, rth_only), " ", GlobalColor("V"), Curve.FIRM);
AddVerticalLine(hl(1000, showtodayonly, price, rth_only), " ", GlobalColor("V"), Curve.FIRM);
AddVerticalLine(hl(1100, showtodayonly, price, rth_only), " ", GlobalColor("V"), Curve.FIRM);
AddVerticalLine(hl(1200, showtodayonly, price, rth_only), " ", GlobalColor("V"), Curve.FIRM);
AddVerticalLine(hl(1300, showtodayonly, price, rth_only), " ", GlobalColor("V"), Curve.FIRM);
AddVerticalLine(hl(1400, showtodayonly, price, rth_only), " ", GlobalColor("V"), Curve.FIRM);
AddVerticalLine(hl(1500, showtodayonly, price, rth_only), " ", GlobalColor("V"), Curve.FIRM);
AddVerticalLine(hl(1600, showtodayonly, price, rth_only), " ", GlobalColor("V"), Curve.FIRM);
AddVerticalLine(hl(1700, showtodayonly, price, rth_only), " ", GlobalColor("V"), Curve.FIRM);
AddVerticalLine(hl(1800, showtodayonly, price, rth_only), " ", GlobalColor("V"), Curve.FIRM);
AddVerticalLine(hl(1900, showtodayonly, price, rth_only), " ", GlobalColor("V"), Curve.FIRM);
AddVerticalLine(hl(2000, showtodayonly, price, rth_only), " ", GlobalColor("V"), Curve.FIRM);
AddVerticalLine(hl(2100, showtodayonly, price, rth_only), " ", GlobalColor("V"), Curve.FIRM);
AddVerticalLine(hl(2200, showtodayonly, price, rth_only), " ", GlobalColor("V"), Curve.FIRM);
AddVerticalLine(hl(2300, showtodayonly, price, rth_only), " ", GlobalColor("V"), Curve.FIRM);
 

Join useThinkScript to post your question to a community of 21,000+ developers and traders.

Similar threads

Not the exact question you're looking for?

Start a new thread and receive assistance from our community.

87k+ Posts
546 Online
Create Post

Similar threads

Similar threads

The Market Trading Game Changer

Join 2,500+ subscribers inside the useThinkScript VIP Membership Club
  • Exclusive indicators
  • Proven strategies & setups
  • Private Discord community
  • ‘Buy The Dip’ signal alerts
  • Exclusive members-only content
  • Add-ons and resources
  • 1 full year of unlimited support

Frequently Asked Questions

What is useThinkScript?

useThinkScript is the #1 community of stock market investors using indicators and other tools to power their trading strategies. Traders of all skill levels use our forums to learn about scripting and indicators, help each other, and discover new ways to gain an edge in the markets.

How do I get started?

We get it. Our forum can be intimidating, if not overwhelming. With thousands of topics, tens of thousands of posts, our community has created an incredibly deep knowledge base for stock traders. No one can ever exhaust every resource provided on our site.

If you are new, or just looking for guidance, here are some helpful links to get you started.

What are the benefits of VIP Membership?
VIP members get exclusive access to these proven and tested premium indicators: Buy the Dip, Advanced Market Moves 2.0, Take Profit, and Volatility Trading Range. In addition, VIP members get access to over 50 VIP-only custom indicators, add-ons, and strategies, private VIP-only forums, private Discord channel to discuss trades and strategies in real-time, customer support, trade alerts, and much more. Learn all about VIP membership here.
How can I access the premium indicators?
To access the premium indicators, which are plug and play ready, sign up for VIP membership here.
Back
Top