#property indicator_chart_window extern int IPeriod = 20; int init() { return (0); } int deinit() { return (0); } int start() { double ld_4; double ld_12; double ld_20; int li_0 = 0; if (Close[0] < iMA(Symbol(), 0, IPeriod, 0, MODE_SMA, PRICE_CLOSE, 0)) li_0 = 1; else li_0 = -1; if (li_0 == 1) ld_12 = Low[iLowest(Symbol(), 0, MODE_LOW, 3, 0)]; else ld_12 = High[iHighest(Symbol(), 0, MODE_HIGH, 3, 0)]; if (li_0 == 1) ld_4 = Close[0] - Low[iLowest(Symbol(), 0, MODE_LOW, 3, 0)]; else ld_4 = High[iHighest(Symbol(), 0, MODE_HIGH, 3, 0)] - Close[0]; if (li_0 == 1) ld_20 = iBands(Symbol(), 0, IPeriod, 2, 0, PRICE_CLOSE, MODE_UPPER, 0) - Close[0]; else ld_20 = Close[0] - iBands(Symbol(), 0, IPeriod, 2, 0, PRICE_CLOSE, MODE_LOWER, 0); if (ObjectFind("lbl") == -1) ObjectCreate("lbl", OBJ_LABEL, 0, Time[5], Close[5]); ObjectSetText("lbl", "FXRanger: Risk:Reward=" + DoubleToStr(ld_20 / ld_4, 3)); ObjectSet("lbl", OBJPROP_FONTSIZE, 12); ObjectSet("lbl", OBJPROP_XDISTANCE, 5); ObjectSet("lbl", OBJPROP_YDISTANCE, 20); if (ObjectFind("lbl2") == -1) ObjectCreate("lbl2", OBJ_LABEL, 0, Time[5], Close[5]); ObjectSetText("lbl2", "FXRanger: Stop Loss=" + DoubleToStr(ld_12, MarketInfo(Symbol(), MODE_DIGITS))); ObjectSet("lbl2", OBJPROP_FONTSIZE, 12); ObjectSet("lbl2", OBJPROP_XDISTANCE, 5); ObjectSet("lbl2", OBJPROP_YDISTANCE, 40); return (0); }