Alright, maybe I it's too early to celebrate, but seems, like I've done it =)

Only white 3Buy/3Short and orange 3Sell/3Cover signals are the ones I am going to use. Others are for "debugging" mostly.
Sorry code is not commented yet.
_SECTION_BEGIN("MWA Cross Trading System (Buy/Sell/Short/Cover) with Trailing Stop Loss Test");
Plot( C, "Close", colorDefault, styleNoLabel | styleNoTitle );
WMAFast = Param("Fast WMA", 10, 1, 50, 1);
WMASlow = Param("Slow WMA", 50, 1, 150, 1);
LongStop = Param("Long Stop Loss", 50, 1, 150, 1);
ShortStop = Param("Short Stop Loss", 50, 1, 150, 1);
Sig1Buy = Cross (WMA (Close, WMAFast) , WMA (Close, WMASlow)); // Raw Buy signal (happens on every WMA cross (10, 50))
Sig1Short = Cross (WMA (Close, WMASlow) , WMA (Close, WMAFast)); // Raw Short signal (happens on every WMA cross (50, 10))
Sig1BuyStopArray = HighestSince(Sig1Buy, High) - (LongStop); // trailing stop loss for Long trade based on Raw signals
Sig1ShortStopArray = LowestSince(Sig1Short, Low) + (ShortStop); // trailing stop loss for Short trade based in Raw signals
Sig1Sell = Cross (Sig1BuyStopArray, Low); // dummy sell signal
Sig1Cover = Cross (High, Sig1ShortStopArray); // dummy cover signal
Sig1Short = ExRem (Sig1Short, Sig1Cover);
Sig1Buy = ExRem (Sig1Buy, Sig1Sell);
Sig1Cover = ExRem (Sig1Cover, Sig1Short);
Sig1Sell = ExRem (Sig1Sell, Sig1Buy);
PlotShapes(Sig1Buy * shapeUpArrow, colorGrey40, 0, Low-10);
PlotShapes(Sig1Short * shapeDownArrow, colorGrey40, 0, High+10);
PlotShapes(Sig1Sell * shapeUpArrow, colorDarkRed, 0, Low-10);
PlotShapes(Sig1Cover * shapeDownArrow, colorDarkRed, 0, High+10);
Plot (Sig1BuyStopArray, "\nSig1Long stop (trail)", colorGreen, styleDashed | styleNoRescale, Null, Null, Null, -10);
Plot (Sig1ShortStopArray, "\nSig1Short stop (trail)", colorDarkRed, styleDashed | styleNoRescale, Null, Null, Null, -10);
Long1TradeArray = Flip(Sig1Buy, Sig1Sell);
Short1TradeArray = Flip(Sig1Short, Sig1Cover);
Sig2Buy = Sig1Buy;
Sig2Short = Sig1Short;
Sig2BuyStopArray = HighestSince(Sig2Buy, High) - (LongStop);
Sig2ShortStopArray = LowestSince(Sig2Short, Low) + (ShortStop);
Sig2Sell = Cross (Sig2BuyStopArray, Low);
Sig2Cover = Cross (High, Sig2ShortStopArray);
Sig2Short = ExRem (Sig2Short, Sig2Cover);
Sig2Buy = ExRem (Sig2Buy, Sig2Sell);
Sig2Cover = ExRem (Sig2Cover, Sig2Short);
Sig2Sell = ExRem (Sig2Sell, Sig2Buy);
PlotShapes(Sig2Buy * shapeUpArrow, colorGrey50, 0, Low-20);
PlotShapes(Sig2Short * shapeDownArrow, colorGrey50, 0, High+20);
PlotShapes(Sig2Sell * shapeUpArrow, colorRed, 0, Low-20);
PlotShapes(Sig2Cover * shapeDownArrow, colorRed, 0, High+20);
Long2TradeArray = Flip(Sig2Buy, Sig2Sell);
Short2TradeArray = Flip(Sig2Short, Sig2Cover);
Sig2BuyStopArray = IIf(Long2TradeArray, HighestSince(Sig2Buy, High) - (LongStop), Null);
Sig2ShortStopArray = IIf(Short2TradeArray, LowestSince(Sig2Short, Low) + (ShortStop), Null);
Plot (Sig2BuyStopArray, "\nSig2Long stop (trail)", colorBrightGreen, styleLine | styleNoRescale, Null, Null, Null, -9);
Plot (Sig2ShortStopArray, "\nSig2Short stop (trail)", colorRed, styleLine | styleNoRescale, Null, Null, Null, -9);
Sig3Buy = Sig2Buy AND !Short2TradeArray;
Sig3Short = Sig2Short AND !Long2TradeArray;
Sig3BuyStopArray = HighestSince(Sig3Buy, High) - (LongStop);
Sig3ShortStopArray = LowestSince(Sig3Short, Low) + (ShortStop);
Sig3Sell = Cross (Sig3BuyStopArray, Low);
Sig3Cover = Cross (High, Sig3ShortStopArray);
Sig3Short = ExRem (Sig3Short, Sig3Cover);
Sig3Buy = ExRem (Sig3Buy, Sig3Sell);
Sig3Cover = ExRem (Sig3Cover, Sig3Short);
Sig3Sell = ExRem (Sig3Sell, Sig3Buy);
PlotShapes(Sig3Buy * shapeUpArrow, colorWhite, 0, Low-30);
PlotShapes(Sig3Short * shapeDownArrow, colorWhite, 0, High+30);
PlotShapes(Sig3Sell * shapeUpArrow, colorWhite, 0, Low-30);
PlotShapes(Sig3Cover * shapeDownArrow, colorWhite, 0, High+30);
Long3TradeArray = Flip(Sig3Buy, Sig3Sell);
Short3TradeArray = Flip(Sig3Short, Sig3Cover);
Sig3BuyStopArray = IIf(Long3TradeArray, HighestSince(Sig3Buy, High) - (LongStop), Null);
Sig3ShortStopArray = IIf(Short3TradeArray, LowestSince(Sig3Short, Low) + (ShortStop), Null);
Plot (Sig3BuyStopArray, "\nSig3Long stop (trail)", colorWhite, styleLine | styleNoRescale, Null, Null, Null, -8);
Plot (Sig3ShortStopArray, "\nSig3Short stop (trail)", colorWhite, styleLine | styleNoRescale, Null, Null, Null, -8);
for (i = 0; i < BarCount; i++)
{
if (Sig1Sell[i]) PlotText ("1Sell " , i, L[i]-50, colorDarkRed);
if (Sig1Cover[i]) PlotText ("1Cover " , i, H[i]+50, colorDarkRed);
if (Sig1Buy[i]) PlotText ("1Buy " , i, L[i]-40, colorGrey40);
if (Sig1Short[i]) PlotText ("1Short " , i, H[i]+40, colorGrey40);
if (Sig2Buy[i]) PlotText ("2Buy " , i, L[i]-50, colorGrey50);
if (Sig2Short[i]) PlotText ("2Short " , i, H[i]+50, colorGrey50);
if (Sig2Sell[i]) PlotText ("2Sell " , i, L[i]-60, colorBrown);
if (Sig2Cover[i]) PlotText ("2Cover " , i, H[i]+60, colorBrown);
if (Sig3Buy[i]) PlotText ("3Buy " , i, L[i]-60, colorWhite);
if (Sig3Short[i]) PlotText ("3Short " , i, H[i]+60, colorWhite);
if (Sig3Sell[i]) PlotText ("3Sell " , i, L[i]-70, colorGold);
if (Sig3Cover[i]) PlotText ("3Cover " , i, H[i]+70, colorGold);
if (Long1TradeArray[i]) PlotText ("|" , i, L[i]-90, colorGreen);
if (Short1TradeArray[i]) PlotText ("|" , i, H[i]+90, colorDarkRed);
if (Long2TradeArray[i]) PlotText ("|" , i, L[i]-100, colorBrightGreen);
if (Short2TradeArray[i]) PlotText ("|" , i, H[i]+100, colorRed);
if (Long3TradeArray[i]) PlotText ("|" , i, L[i]-110, colorWhite);
if (Short3TradeArray[i]) PlotText ("|" , i, H[i]+110, colorWhite);
}
//---------------------------------PLOT PRICE FAST AND SLOW WMA--------------------------------------
Plot( WMA (Close, WMAFast), "\nWMA Fast", colorGold, styleLine |styleNoLabel );
Plot( WMA (Close, WMASlow), "\nWMA Slow", colorAqua, styleLine |styleNoLabel );
_N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} \nOpen %g, Hi %g, Lo %g, Close %g (%.1f%%) {{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 ) ) ));
Plot( C, "Close", colorDefault, styleNoTitle | GetPriceStyle() );
_SECTION_END();
Would be awesome to somehow "compress" this formula, but I am glad that it even works as is. It's been quite a challenge so far.