@Mightymorphinchris Try this, Play with the settings to see your risk tolerance. Adjust accordingly
input action = {Default "Long","Short"};
input entry_price = 2.75;
input sl_percent =0.3;
input rr_ratio = 2;
input position_size = 2000;
input offset = 5;
def shares = position_size / entry_price;
plot stop;
switch (action) {
case Long:
stop = if isnan(close[5]) then round((position_size - (sl_percent * position_size / 100)) / shares)
else double.nan;
Case Short:
stop = if isnan(close[5]) then round((position_size + (sl_percent * position_size / 100)) / shares)
else double.nan;}
plot entry = if isnan(close[5]) then entry_price else double.nan;
plot t1 = if isnan(close[5]) then entry_price + rr_ratio * (entry_price - stop) else double.nan;
plot t2 = if isnan(close[5]) then entry_price + (2 * rr_ratio) * (entry_price - stop) else double.nan;
plot t3 = if isnan(close[5]) then entry_price + (3 * rr_ratio) * (entry_price - stop) else double.nan;
AddCloud(entry_price, stop, Color.GRAY, Color.GRAY);
AddCloud(t1, t2, Color.GREEN, Color.GREEN);
AddCloud(t2, t3, Color.LIGHT_GREEN, Color.LIGHT_GREEN);
AddChartBubble(IsNaN(close[5]) and !IsNaN(close[6]), entry_price, entry_price, Color.Light_Gray);
AddChartBubble(IsNaN(close[5]) and !IsNaN(close[6]), t1, "T1 $" + t1, Color.GREEN);
AddChartBubble(IsNaN(close[5]) and !IsNaN(close[6]), t2, "T2 $" + t2, Color.GREEN);
AddChartBubble(IsNaN(close[5]) and !IsNaN(close[6]), t3, "T3 $" + t3, Color.GREEN);
AddChartBubble(IsNaN(close[5]) and !IsNaN(close[6]), stop, "STOP $" + stop, Color.RED, no);