For reference here is the strategy it points to:
#MTF Heiken Ashi Trend Moving Average
def haAgg1 = GetAggregationPeriod();
input haAgg2 = AggregationPeriod.THIRTY_MIN;
def fastEMA = movAvgExponential (10);
def slowEMA = movAvgExponential (30);
def Bullish = fastEMA is greater than slowEMA;
def Bearish = fastEMA is less than slowEMA;
input maLength = 20;
input averageType = AverageType.EXPONENTIAL;
input price = close;
input Alerts = yes; #Hint Alerts: BUY/SELL audio alerts
DefineGlobalColor("Bullish", Color.GREEN);
DefineGlobalColor("Bearish", Color.RED);
DefineGlobalColor("Neutral", Color.YELLOW);
#HAgg1
def o1 = open("period"= haAgg1);
def h1 = high("period"= haAgg1);
def l1 = low("period"= haAgg1);
def c1 = close("period"= haAgg1);
def HA1open;
def HA1high;
def HA1low;
def HA1close;
HA1open = CompoundValue(1, (HA1open[1] + HA1close[1]) / 2, (o1[1] + c1[1]) / 2);
HA1high = Max(Max(h1, HA1open), HA1close[1]);
HA1low = Min(Min(l1, HA1open), HA1close[1]);
HA1close = (o1 + h1 + l1 + c1) / 4;
#HAgg2
def o2 = open("period"= haAgg2);
def h2 = high("period"= haAgg2);
def l2 = low("period"= haAgg2);
def c2 = close("period"= haAgg2);
def HA2open;
def HA2high;
def HA2low;
def HA2close;
HA2open = CompoundValue(1, (HA2open[1] + HA2close[1]) / 2, (o2[1] + c2[1]) / 2);
HA2high = Max(Max(h2, HA2open), HA2close[1]);
HA2low = Min(Min(l2, HA2open), HA2close[1]);
HA2close = (o2 + h2 + l2 + c2) / 4;
def HA1 = HA1close > HA1open;
def HA2 = HA2close > HA2open;
AddLabel(1,"HA1", if HA1 then GlobalColor("Bullish") else GlobalColor("Bearish"));
AddLabel(1,"HA2", if HA2 then GlobalColor("Bullish") else GlobalColor("Bearish"));
plot MA = MovingAverage(AverageType, price, maLength);
MA.SetDefaultColor(Color.GRAY);
MA.SetLineWeight(2);
MA.AssignValueColor(if HA1 and HA2 then GlobalColor("Bullish") else if !HA1 and !HA2 then GlobalColor("Bearish") else GlobalColor("Neutral"));
def posHASig = HA1 and HA2;
def negHASig = !HA1 and !HA2;
plot UpSig = posHASig and !posHASig[1];
plot DownSig = negHASig and !negHASig[1];
UpSig.SetPaintingStrategy(PaintingStrategy.BOOLEAN_ARROW_UP);
DownSig.SetPaintingStrategy(PaintingStrategy.BOOLEAN_ARROW_DOWN);
UpSig.AssignValueColor(GlobalColor("Bullish"));
DownSig.AssignValueColor(GlobalColor("Bearish"));
Alert(UpSig[1] and Alerts, "HA Long", Alert.BAR, Sound.Bell);
Alert(DownSig[1] and Alerts, "HA Short", Alert.BAR, Sound.Bell);
-----------------------------------------------------------------------------------------------------------------------------------
then i add the 10 EMA greater than 30 EMA for longs and the opposite for shorts