haDelta from Trading View/pine script to ThinkScript?

Status
Not open for further replies.

hashy

Member
If anyone is bored and would like to convert this simple script from Trading View over to ThinkScript I would greatly appreciate it. TIA!

Code:
study(title="haDelta by Dan Valcu", shorttitle="haDelta+SMA")
delta = close - open
plot(delta, color=black)
s2=sma(delta, 3)
plot(s2, color = red)
plot(s2, color=red, style=area)
c_color=s2 < 0 ? (s2 < s2[1] ? red : lime) : (s2 >= 0 ? (s2 > s2[1] ? lime : red) : na)
plot(s2, color=c_color, style=circles, linewidth=2)
h0 = hline(0)

source: https://www.tradingview.com/script/3gxRNmub-haDelta-developed-by-Dan-Valcu/
Thanks again
 
Last edited by a moderator:

tradegeek

Active member
2019 Donor
@hashy

I'm not a coder but it seems easy so I gave it a shot for practice. Let me know how it is...

https://tos.mx/Jobl3Eb
Code:
# haDelta was originally developed by Dan Valcu
# Pinescript by Kumowizard
# https://www.tradingview.com/script/3gxRNmub-haDelta-developed-by-Dan-Valcu/
# Converted to Thinkscript by tradegeek on thinkscript.com on 04/25/2020
#
# The indicator measures difference between Heikin Ashi close and open
# thus quantifies Heikin Ashi candles to get earlier signals
# haDelta smoothed by applying 3 period SMA

declare lower;

input smoothingLength = 3;

def haclose = (open + high + low + close) / 4;
def haopen = CompoundValue(1, (haopen[1] + haclose[1]) / 2, (open[1] + close[1]) / 2);
plot HAdiff = haclose - haopen;
plot HAavg = Average(HAdiff, smoothingLength);

plot zeroline = 0;

zeroline.SetDefaultColor(Color.GRAY);
zeroline.SetPaintingStrategy(PaintingStrategy.DASHES);

HAdiff.SetDefaultColor(Color.ORANGE);

HAavg.DefineColor("Up", Color.uptick);
HAavg.DefineColor("Down", Color.downtick);
HAavg.DefineColor("Flat", Color.GRAY);
HAavg.AssignValueColor(if HAavg >= HAavg[1] then HAavg.Color("Up") else if HAavg <= HAavg[1] then HAavg.Color("Down") else HAavg.Color("Flat"));

HAavg.SetPaintingStrategy(PaintingStrategy.LINE_VS_POINTS);

AddCloud(HAavg, zeroline, Color.GREEN, Color.RED);
 
Last edited:

hashy

Member
@tradegeek Do you know how to add overbought/oversold lines to your script?
I've tried variations of the code below but get an error every time I try to add an additional "plot" to your script. Thanks again

plot OverBought = over_bought;
plot OverSold = over_sold;
OverBought.SetDefaultColor(GetColor(5));
OverSold.SetDefaultColor(GetColor(5));
 

diazlaz

Well-known member
2019 Donor
VIP
@tradegeek nice work. in ToS there is a native study called, HeikinAshiDiff. if you want HA candles you will need to apply the open/close formula for HA candles, refer to the HeikinAshiDiff for the formula.

I really like this, i going to do a quick analysis on a deviation of HA and compare it to a regular candle open and close.
 

tradegeek

Active member
2019 Donor
@tradegeek Do you know how to add overbought/oversold lines to your script?
I've tried variations of the code below but get an error every time I try to add an additional "plot" to your script. Thanks again

plot OverBought = over_bought;
plot OverSold = over_sold;
OverBought.SetDefaultColor(GetColor(5));
OverSold.SetDefaultColor(GetColor(5));

I believe you have to define the overbought and oversold area first or assign a numeric value to them when you plot them like...

plot OverBought = 10;
plot OverSold = -10;
 

tradegeek

Active member
2019 Donor
nice work. in ToS there is a native study called, HeikinAshiDiff. if you want HA candles you will need to apply the open/close formula for HA candles, refer to the HeikinAshiDiff for the formula.

I really like this, i going to do a quick analysis on a deviation of HA and compare it to a regular candle open and close.

@diazlaz Thanks buddy!

I took a look at the HeikinAshiDiff and made changes to my code to reflect that and took out some things that weren't needed in my original code:
https://usethinkscript.com/threads/hadelta-for-thinkorswim.9500/

The Indicator can be found in the above link, feel free to continue discussion there. This thead is locked.
 
Last edited by a moderator:
Status
Not open for further replies.
Top