Is there a way to color the background say 10 days before earnings up until earnings and then a different color 10 days after earnings.
Here you go. Bring up the settings window to change the number of days before / after earnings, whether to show the vertical lines and / or fill in the background colors, and to change the default colors for each component.
ThinkScript: chart without highlights
ThinkScript: chart with highlights
Hi Bob,
Can upcoming earnings date be plotted by this script?
Yes, just extend the time-axis to the right far enough to include future earnings dates.
ThinkScript: showing future earnings
This code is designed to work on a daily time frame.
# +--------------------------------------------------+ # | Highlight days around earnings | # | Robert Payne | # | http://rrpayne.blogspot.com | # +--------------------------------------------------+ input daysBefore = 10; input daysAfter = 10; input showLines = yes; input paintBackground = yes; DefineGlobalColor("Before Earnings", Color.GREEN); DefineGlobalColor("Earnings Release Date", Color.YELLOW); DefineGlobalColor("After Earnings", Color.CYAN); DefineGlobalColor("Fill Before", CreateColor(178, 216, 166)); DefineGlobalColor("Fill After", CreateColor(131, 191, 213)); AddVerticalLine(showLines and HasEarnings()[-daysBefore], Concat(daysBefore, " Days Before" ), GlobalColor("Before Earnings" ), Curve.FIRM); AddVerticalLine(showLines and HasEarnings(), "Earnings!", GlobalColor("Earnings Release Date" ), Curve.FIRM); AddVerticalLine(showLines and HasEarnings()[daysAfter], Concat(daysAfter, " Days After" ), GlobalColor("After Earnings" ), Curve.FIRM); def before = Sum(HasEarnings(), daysBefore)[-daysBefore]; def after = Sum(HasEarnings(), daysAfter)[1]; def value1 = Double.Positive_Infinity; def value2 = if paintBackground and before then Double.Negative_Infinity else Double.NaN; def value3 = if paintBackground and after then Double.Negative_Infinity else Double.NaN; AddCloud(value1, value2, GlobalColor("Fill Before" )); AddCloud(value1, value3, GlobalColor("Fill After" ));