编码帮助 - 页 527 1...520521522523524525526527528529530531532533534...786 新评论 Dawid Ciechowski 2015.09.05 15:27 #5261 mladen: 只要将这些行的背面属性设置为真(像这样ObjectSet(name, OBJPROP_BACK, true);),标签就会消失。 谢谢你的帮助! debashis 2015.09.06 05:06 #5262 谁能告诉我这个指标的上/下箭头背后的逻辑? 代码部分:1 #property indicator_chart_window #property indicator_buffers 2 #property indicator_color1 Lime #property indicator_color2 Red string Gs_unused_76 = "USDIX,EURUSD,GBPUSD,USDCHF,USDJPY"; string Gs_unused_84 = "EURUSD,GBPUSD,USDCHF,USDJPY,USDCAD,AUDUSD,NZDUSD,EURJPY,EURGBP,AUDJPY"; string Gs_unused_92 = "EURUSD,GBPUSD,USDCHF,USDJPY,USDCAD,AUDUSD,NZDUSD,EURJPY,EURGBP,AUDJPY,GBPJPY,EURAUD,EURCAD,CHFJPY,AUDCAD,GBPCHF,EURCHF"; string Gs_unused_100 = "EURUSD,GBPUSD,USDCHF,USDJPY,USDCAD,AUDUSD,NZDUSD,EURJPY,EURGBP,AUDJPY,GBPJPY,EURAUD,EURCAD,CHFJPY,AUDCAD,GBPCHF,EURCHF,NZDJPY,CADJPY,AUDNZD,GBPAUD,GBPCAD"; int Gi_unused_168 = 1; bool Gi_unused_188 = FALSE; bool Gi_unused_192 = FALSE; string Gs_unused_196 = "Virt_stop_buy_1"; string Gs_unused_204 = "Virt_stop_sell_1"; int G_timeframe_212 = 0; string Gs_216; double Gda_unused_224[]; double Gda_unused_228[]; int Gi_232; int Gi_236; int Gi_240 = 100; int Gi_244 = 50; int Gi_248 = 25; int G_bars_252 = 0; string Gs_unused_256; int G_period_264 = 17; int G_ma_method_268 = MODE_EMA; bool Gi_unused_272 = FALSE; bool Gi_unused_276 = FALSE; string Gs_unused_280 = "Virt_buy_profit"; string Gs_unused_288 = "Virt_sell_profit"; int G_applied_price_296 = PRICE_OPEN; int G_period_300 = 121; int G_ma_method_304 = MODE_SMMA; int G_applied_price_308 = PRICE_CLOSE; extern int ArrowType = 0; extern bool AlertOn = FALSE; extern bool AlertReversalOn = FALSE; extern bool SendAnEmail = FALSE; double Gd_unused_324; bool Gi_332 = TRUE; double G_ibuf_336[]; double G_ibuf_340[]; string Gs_344; string Gs_352; string Gs_360; int Gi_unused_368; int Gia_unused_392[1]; int Gia_unused_396[1]; int Gia_unused_404[100]; int Gia_unused_408[100]; int Gia_unused_412[100]; int Gia_unused_416[100]; bool Gi_unused_420 = TRUE; bool Gi_unused_424 = TRUE; bool Gi_unused_436 = FALSE; double Gd_unused_440 = 0.0; double Gd_unused_448 = 0.0; int Gi_unused_456 = -1; double Gd_unused_516 = 1.0; bool Gi_unused_528 = TRUE; int Gi_unused_532 = 10; int Gi_536 = 0; int Gi_540 = 0; int Gi_544 = 0; int Gi_548 = 0; int Gi_552 = 0; int Gi_556 = 0; int Gi_unused_560 = 0; int Gi_unused_564 = 0; string Gs_dummy_568; string Gs_dummy_576; double G_ilow_584 = 0.0; double G_ihigh_592 = 0.0; int Gi_600 = 0; int Gi_unused_604 = 10; int Gi_unused_608 = 4; int Gi_unused_612 = 3; int Gi_unused_616 = 150; int Gi_unused_620 = 21; int Gi_unused_624 = 40; int Gi_unused_628 = 21; bool Gi_unused_632 = TRUE; bool Gi_unused_636 = TRUE; string Gs_644; string Gs_652; string Gs_unused_660; datetime G_time_668 = 0; datetime G_time_6688 = 0; string f0_1() { string timeframe_4; switch (Period()) { case PERIOD_M1: timeframe_4 = "M1"; break; case PERIOD_M5: timeframe_4 = "M5"; break; case PERIOD_M15: timeframe_4 = "M15"; break; case PERIOD_M30: timeframe_4 = "M30"; break; case PERIOD_H1: timeframe_4 = "H1"; break; case PERIOD_H4: timeframe_4 = "H4"; break; case PERIOD_D1: timeframe_4 = "D1"; break; case PERIOD_W1: timeframe_4 = "W1"; break; case PERIOD_MN1: timeframe_4 = "MN1"; break; default: timeframe_4 = Period(); } return (timeframe_4); } int init() { if (ArrowType == 0) { SetIndexStyle(0, DRAW_ARROW); SetIndexArrow(0, 233); SetIndexStyle(1, DRAW_ARROW); SetIndexArrow(1, 234); } else { if (ArrowType == 1) { SetIndexStyle(0, DRAW_ARROW); SetIndexArrow(0, 225); SetIndexStyle(1, DRAW_ARROW); SetIndexArrow(1, 226); } else { if (ArrowType == 2) { SetIndexStyle(0, DRAW_ARROW); SetIndexArrow(0, SYMBOL_ARROWUP); SetIndexStyle(1, DRAW_ARROW); SetIndexArrow(1, SYMBOL_ARROWDOWN); } else { if (ArrowType == 3) { SetIndexStyle(0, DRAW_ARROW); SetIndexArrow(0, 221); SetIndexStyle(1, DRAW_ARROW); SetIndexArrow(1, 222); } else { if (ArrowType == 4) { SetIndexStyle(0, DRAW_ARROW); SetIndexArrow(0, 217); SetIndexStyle(1, DRAW_ARROW); SetIndexArrow(1, 218); } else { if (ArrowType == 5) { SetIndexStyle(0, DRAW_ARROW); SetIndexArrow(0, 228); SetIndexStyle(1, DRAW_ARROW); SetIndexArrow(1, 230); } else { if (ArrowType == 6) { SetIndexStyle(0, DRAW_ARROW); SetIndexArrow(0, 236); SetIndexStyle(1, DRAW_ARROW); SetIndexArrow(1, 238); } else { if (ArrowType == 7) { SetIndexStyle(0, DRAW_ARROW); SetIndexArrow(0, 246); SetIndexStyle(1, DRAW_ARROW); SetIndexArrow(1, 248); } else { if (ArrowType == 8) { SetIndexStyle(0, DRAW_ARROW); SetIndexArrow(0, SYMBOL_THUMBSUP); SetIndexStyle(1, DRAW_ARROW); SetIndexArrow(1, SYMBOL_THUMBSDOWN); } else { if (ArrowType == 9) { SetIndexStyle(0, DRAW_ARROW); SetIndexArrow(0, 71); SetIndexStyle(1, DRAW_ARROW); SetIndexArrow(1, 72); } } } } } } } } } } SetIndexBuffer(0, G_ibuf_336); SetIndexBuffer(1, G_ibuf_340); SetIndexEmptyValue(0, 0.0); IndicatorShortName("(" + Gi_240 + "," + Gi_244 + "," + Gi_248 + ")"); switch (G_ma_method_268) { case MODE_EMA: Gs_652 = "PRICE"; break; case MODE_SMMA: Gs_652 = "PRICE"; break; case MODE_LWMA: Gs_652 = "PRICE"; break; default: G_ma_method_268 = 0; Gs_652 = "PRICE"; } switch (G_ma_method_304) { case MODE_EMA: Gs_unused_660 = "PRICE"; break; case MODE_SMMA: Gs_unused_660 = "PRICE"; break; case MODE_LWMA: Gs_unused_660 = "PRICE"; break; default: G_ma_method_304 = 0; Gs_unused_660 = "PRICE"; } Gs_644 = Symbol() + " (" + f0_1() + "): "; IndicatorShortName("Probability Meter"); if (Symbol() == "GBPJPY" || Symbol() == "EURJPY" || Symbol() == "USDJPY" || Symbol() == "GOLD" || Symbol() == "USDMXN") Gi_unused_368 = 2; if (Symbol() == "GBPUSD" || Symbol() == "EURUSD" || Symbol() == "NZDUSD" || Symbol() == "USDCHF" || Symbol() == "USDCAD" || Symbol() == "AUDUSD" || Symbol() == "EURUSD" || Symbol() == "EURCHF" || Symbol() == "EURGBP" || Symbol() == "EURCAD" || Symbol() == "EURAUD" || Symbol() == "AUDNZD") Gi_unused_368 = 4; return (0); } Coding help 如何编码? mt4 rsi 超买超卖提醒不了 debashis 2015.09.06 05:13 #5263 代码第2部分。 void deinit() { ObjectsDeleteAll(); } int f0_0() { datetime time_0 = Time[0]; if (G_time_668 != time_0) { G_time_668 = time_0; return (1); } return (0); } int f0_00() { datetime time_0 = Time[0]; if (G_time_6688 != time_0) { G_time_6688 = time_0; return (1); } return (0); } void f0_2() { double Lda_unused_80[]; double Lda_unused_84[]; double Lda_unused_88[]; int Lia_unused_148[30]; double istochastic_0 = iStochastic(NULL, 0, 10, 5, 5, MODE_EMA, 1, MODE_MAIN, 0); if (istochastic_0 = 25.0) Gs_216 = "91%"; else { if (istochastic_0 >= 75.0 && istochastic_0 <= 88.0) Gs_216 = "83%"; else { if (istochastic_0 = 12.0) Gs_216 = "76%"; else { if (istochastic_0 >= 88.0) Gs_216 = "62%"; else { if (istochastic_0 <= 12.0) Gs_216 = "94%"; else if (istochastic_0 >= 70.0) Gs_216 = "78%"; } } } } double ima_8 = iMA(NULL, 0, 6, 0, MODE_SMA, PRICE_CLOSE, 0); double ima_16 = iMA(NULL, 0, 24, 0, MODE_EMA, PRICE_CLOSE, 0); double ima_24 = iMA(NULL, 0, 100, 0, MODE_EMA, PRICE_CLOSE, 0); double ima_32 = iMA(NULL, 0, 500, 0, MODE_SMA, PRICE_CLOSE, 0); double istochastic_40 = iStochastic(NULL, 0, 10, 5, 5, MODE_EMA, 0, MODE_MAIN, 0); if (ima_8 > ima_16) Gs_344 = "Up Trend"; else if (ima_16 > ima_8) Gs_344 = "Down Trend"; if (ima_24 > ima_32) Gs_352 = "UP"; else if (ima_32 > ima_24) Gs_352 = "DOWN"; if (istochastic_40 < 30.0) Gs_360 = "Support Area"; else { if (istochastic_40 > 70.0) Gs_360 = "Resistance"; else Gs_360 = "Normal"; } string Ls_48 = ""; int Li_unused_56 = 1; if (Digits < 4) Gd_unused_324 = 0.01; else Gd_unused_324 = 0.0001; if (G_bars_252 != Bars) G_bars_252 = Bars; double iatr_60 = iATR(Symbol(), Period(), 5, 1); double Ld_68 = 0.61 * MathRound(iatr_60 * MathPow(7, Digits)); int Li_unused_104 = 0; double Ld_unused_108 = 0.0; double Ld_unused_116 = 0.0; double Ld_unused_124 = 0.0; double Ld_unused_132 = 0.0; int Li_unused_140 = 50; double Ld_152 = 1.0 * Ld_68; Ls_48 = Ls_48 + "\n" + "\n" + ""; Comment(Ls_48); if (ObjectFind("LV") < 0) { ObjectCreate("LV", OBJ_LABEL, 0, 0, 0); ObjectSetText("LV", " BINARY PROFITS TURBO", 9, "Tahoma Bold", White); ObjectSet("LV", OBJPROP_CORNER, 0); ObjectSet("LV", OBJPROP_BACK, FALSE); ObjectSet("LV", OBJPROP_XDISTANCE, 13); ObjectSet("LV", OBJPROP_YDISTANCE, 23); } if (ObjectFind("LV3") < 0) { ObjectCreate("LV3", OBJ_LABEL, 0, 0, 0); ObjectSetText("LV3", "Probability: " + Gs_216 + "", 9, "Tahoma Bold", White); ObjectSet("LV3", OBJPROP_CORNER, 0); ObjectSet("LV3", OBJPROP_BACK, FALSE); ObjectSet("LV3", OBJPROP_XDISTANCE, 13); ObjectSet("LV3", OBJPROP_YDISTANCE, 63); } if (ObjectFind("LV22") < 0) { ObjectCreate("LV22", OBJ_LABEL, 0, 0, 0); ObjectSetText("LV22", "Short Term Trend: " + Gs_344 + "", 9, "Tahoma Bold", White); ObjectSet("LV22", OBJPROP_CORNER, 0); ObjectSet("LV22", OBJPROP_BACK, FALSE); ObjectSet("LV22", OBJPROP_XDISTANCE, 13); ObjectSet("LV22", OBJPROP_YDISTANCE, 82); } if (ObjectFind("LV222") < 0) { ObjectCreate("LV222", OBJ_LABEL, 0, 0, 0); ObjectSetText("LV222", "Long Term Trend: " + Gs_352 + " Trend", 9, "Tahoma Bold", White); ObjectSet("LV222", OBJPROP_CORNER, 0); ObjectSet("LV222", OBJPROP_BACK, FALSE); ObjectSet("LV222", OBJPROP_XDISTANCE, 13); ObjectSet("LV222", OBJPROP_YDISTANCE, 123); } if (ObjectFind("LV2222") < 0) { ObjectCreate("LV2222", OBJ_LABEL, 0, 0, 0); ObjectSetText("LV2222", "Market Condition : " + Gs_360 + "", 9, "Tahoma Bold", White); ObjectSet("LV2222", OBJPROP_CORNER, 0); ObjectSet("LV2222", OBJPROP_BACK, FALSE); ObjectSet("LV2222", OBJPROP_XDISTANCE, 13); ObjectSet("LV2222", OBJPROP_YDISTANCE, 143); } if (ObjectFind("LV3222") < 0) { ObjectCreate("LV3222", OBJ_LABEL, 0, 0, 0); ObjectSetText("LV3222", "TRADE RISK : " + DoubleToStr(Ld_152, 0) + "", 9, "Tahoma Bold", White); ObjectSet("LV3222", OBJPROP_CORNER, 0); ObjectSet("LV3222", OBJPROP_BACK, FALSE); ObjectSet("LV3222", OBJPROP_XDISTANCE, 13); ObjectSet("LV3222", OBJPROP_YDISTANCE, 183); } if (ObjectFind("BKGR") < 0) { ObjectCreate("BKGR", OBJ_LABEL, 0, 0, 0); ObjectSetText("BKGR", "g", 165, "Webdings", Red); ObjectSet("BKGR", OBJPROP_CORNER, 0); ObjectSet("BKGR", OBJPROP_BACK, TRUE); ObjectSet("BKGR", OBJPROP_XDISTANCE, 5); ObjectSet("BKGR", OBJPROP_YDISTANCE, 15); } if (ObjectFind("BKGR2") < 0) { ObjectCreate("BKGR2", OBJ_LABEL, 0, 0, 0); ObjectSetText("BKGR2", "g", 165, "Webdings", Red); ObjectSet("BKGR2", OBJPROP_BACK, TRUE); ObjectSet("BKGR2", OBJPROP_XDISTANCE, 5); ObjectSet("BKGR2", OBJPROP_YDISTANCE, 50); } if (ObjectFind("BKGR3") < 0) { ObjectCreate("BKGR3", OBJ_LABEL, 0, 0, 0); ObjectSetText("BKGR3", "g", 160, "Webdings", Black); ObjectSet("BKGR3", OBJPROP_CORNER, 0); ObjectSet("BKGR3", OBJPROP_BACK, TRUE); ObjectSet("BKGR3", OBJPROP_XDISTANCE, 3); ObjectSet("BKGR3", OBJPROP_YDISTANCE, 45); } } int start() { int Li_12; double ima_16; double ima_24; double ima_32; double ima_40; double ima_48; double ima_56; double Ld_72; double Ld_80; double idemarker_92; double idemarker_100; double Ld_124; double Ld_132; double Ld_140; double Ld_148; double Ld_156; double Ld_164; int Lia_unused_212[12][1000]; double Lda_unused_216[12][1000]; int Lia_unused_220[1000]; double Lda_unused_224[1000]; bool Lba_unused_232[12]; string Lsa_unused_236[12]; string Lsa_unused_240[12]; int Li_276; int Li_280; Gi_536 = (iHigh(NULL, PERIOD_D1, 0) - iLow(NULL, PERIOD_D1, 0)) / Point / 10.0; Gi_540 = (iHigh(NULL, PERIOD_D1, 1) - iLow(NULL, PERIOD_D1, 1)) / Point / 10.0; for (Gi_600 = 1; Gi_600 <= 5; Gi_600++) Gi_544 = Gi_544 + (iHigh(NULL, PERIOD_D1, Gi_600) - iLow(NULL, PERIOD_D1, Gi_600)) / Point / 10.0; for (Gi_600 = 1; Gi_600 <= 10; Gi_600++) Gi_548 = Gi_548 + (iHigh(NULL, PERIOD_D1, Gi_600) - iLow(NULL, PERIOD_D1, Gi_600)) / Point / 10.0; for (Gi_600 = 1; Gi_600 <= 20; Gi_600++) Gi_552 = Gi_552 + (iHigh(NULL, PERIOD_D1, Gi_600) - iLow(NULL, PERIOD_D1, Gi_600)) / Point / 10.0; Gi_544 /= 5; Gi_548 /= 10; Gi_552 /= 20; Gi_556 = (Gi_536 + Gi_540 + Gi_544 + Gi_548 + Gi_552) / 5; G_ilow_584 = iLow(NULL, PERIOD_D1, 0); G_ihigh_592 = iHigh(NULL, PERIOD_D1, 0); Gi_unused_560 = (Bid - G_ilow_584) / Point / 10.0; Gi_unused_564 = (G_ihigh_592 - Bid) / Point / 10.0; string Ls_unused_0 = Period(); if (Gi_332) f0_2(); double iadx_64 = iADX(NULL, 0, 21, PRICE_CLOSE, MODE_MAIN, 0); int Li_88 = IndicatorCounted(); if (Li_88 < 0) return (-1); if (Li_88 > 0) Li_88--; int Li_8 = Bars - Li_88; for (Gi_600 = 0; Gi_600 <= Li_8; Gi_600++) { Li_12 = Gi_600; Ld_72 = 0; Ld_80 = 0; for (Li_12 = Gi_600; Li_12 <= Gi_600 + 9; Li_12++) Ld_80 += MathAbs(High[Li_12] - Low[Li_12]); Ld_72 = Ld_80 / 10.0; ima_16 = iMA(NULL, 0, G_period_264, 0, G_ma_method_268, G_applied_price_296, Gi_600); ima_32 = iMA(NULL, 0, G_period_264, 0, G_ma_method_268, G_applied_price_296, Gi_600 + 1); ima_48 = iMA(NULL, 0, G_period_264, 0, G_ma_method_268, G_applied_price_296, Gi_600 - 1); ima_24 = iMA(NULL, 0, G_period_300, 0, G_ma_method_304, G_applied_price_308, Gi_600); ima_40 = iMA(NULL, 0, G_period_300, 0, G_ma_method_304, G_applied_price_308, Gi_600 + 1); ima_56 = iMA(NULL, 0, G_period_300, 0, G_ma_method_304, G_applied_price_308, Gi_600 - 1); HideTestIndicators(TRUE); idemarker_92 = iDeMarker(NULL, 0, 14, 0); idemarker_100 = iDeMarker(NULL, 0, 14, 1); HideTestIndicators(FALSE); if (ima_16 > ima_24 && ima_32 ima_56 && idemarker_92 < 0.8) { G_ibuf_336[Gi_600] = Low[Gi_600] - 1.5 * Ld_72; if (f0_0()) { if (AlertOn) { Gs_unused_256 = "CALL ALERT"; Alert(Gs_644 + Gs_652 + " (" + G_period_264 + ") " + "CALL ALERT "); } if (SendAnEmail) { Gs_unused_256 = "CALL ALERT"; SendMail(Gs_644, Gs_652 + " (" + G_period_264 + ") " + "CALL ALERT"); } } } else { if (ima_16 ima_40 && ima_48 0.2) { G_ibuf_340[Gi_600] = High[Gi_600] + 1.5 * Ld_72; if (f0_0()) { if (AlertOn) { Gs_unused_256 = "PUT ALERT"; Alert(Gs_644 + Gs_652 + " (" + G_period_264 + ") " + "PUT ALERT"); } if (SendAnEmail) { Gs_unused_256 = "PUT ALERT"; SendMail(Gs_644, Gs_652 + " (" + G_period_264 + ") " + "PUT ALERT"); } } } } } Coding help 如何编码? Coding questions ... debashis 2015.09.06 05:14 #5264 代码第3部分。 string Ls_unused_172 = "Scalp Alert"; string Ls_unused_180 = "ST Alert"; string Ls_unused_188 = "LT Alert"; int Li_unused_200 = -1; int Li_unused_204 = 1; int Li_unused_208 = 0; int Lia_unused_228[12] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; int Li_unused_248 = 80; int Li_unused_252 = 20; for (int Li_108 = Bars - Gi_240; Li_108 >= 0; Li_108--) { Ld_124 = Low; if (Ld_124 == Ld_164) Ld_124 = 0.0; else { Ld_164 = Ld_124; if (Low[Li_108] - Ld_124 > Gi_244 * Point) Ld_124 = 0.0; else { for (int Li_112 = 1; Li_112 <= Gi_248; Li_112++) { Ld_132 = G_ibuf_336[Li_108 + Li_112]; if (Ld_132 != 0.0 && Ld_132 > Ld_124) G_ibuf_336[Li_108 + Li_112] = 0.0; } } } G_ibuf_336[Li_108] = Ld_124; Ld_124 = High; if (Ld_124 == Ld_156) Ld_124 = 0.0; else { Ld_156 = Ld_124; if (Ld_124 - High[Li_108] > Gi_244 * Point) Ld_124 = 0.0; else { for (Li_112 = 1; Li_112 <= Gi_248; Li_112++) { Ld_132 = G_ibuf_340[Li_108 + Li_112]; if (Ld_132 != 0.0 && Ld_132 < Ld_124) G_ibuf_340[Li_108 + Li_112] = 0.0; } } } G_ibuf_340[Li_108] = Ld_124; } Ld_156 = -1; int Li_116 = -1; Ld_164 = -1; int Li_120 = -1; for (Li_108 = Bars - Gi_240; Li_108 >= 0; Li_108--) { Ld_140 = G_ibuf_336[Li_108]; Ld_148 = G_ibuf_340[Li_108]; if (Ld_140 == 0.0 && Ld_148 == 0.0) continue; if (Ld_148 != 0.0) { if (Ld_156 > 0.0) { if (Ld_156 < Ld_148) G_ibuf_340[Li_116] = 0; else G_ibuf_340[Li_108] = 0; } if (Ld_156 < Ld_148 || Ld_156 < 0.0) { Ld_156 = Ld_148; Li_116 = Li_108; } Ld_164 = -1; } if (Ld_140 != 0.0) { if (Ld_164 > 0.0) { if (Ld_164 > Ld_140) G_ibuf_336[Li_120] = 0; else G_ibuf_336[Li_108] = 0; } if (Ld_140 < Ld_164 || Ld_164 < 0.0) { Ld_164 = Ld_140; Li_120 = Li_108; } Ld_156 = -1; } } for (Li_108 = Bars - 1; Li_108 >= 0; Li_108--) { if (Li_108 >= Bars - Gi_240) G_ibuf_336[Li_108] = 0.0; else { Ld_132 = G_ibuf_340[Li_108]; if (Ld_132 != 0.0) G_ibuf_340[Li_108] = Ld_132; } for (int index_284 = 0; G_ibuf_336 == 0.0 && G_ibuf_340 == 0.0; index_284++) { } Li_276 = index_284; for (index_284++; G_ibuf_336 == 0.0 && G_ibuf_340 == 0.0; index_284++) { } Li_280 = index_284; if (Gi_232 != Li_276 || Gi_236 != Li_280) { if (Gi_232 > Li_276 && AlertReversalOn && f0_00()) Alert("Alert : Market Reversal (", Period(), " ", Symbol(), ")"); Gi_232 = Li_276; Gi_236 = Li_280; } if (Gi_232 != Li_276 || Gi_236 != Li_280) { if (Gi_232 < Li_276 && AlertReversalOn && f0_00()) Alert("Alert : Market Reversal (", Period(), " ", Symbol(), ")"); Gi_232 = Li_276; Gi_236 = Li_280; } } return (0); Coding help Buy/Sell indicator 90 % 编码帮助......我如何让指标过滤而不是警报? techmac 2015.09.06 16:32 #5265 debashis: 代码第3部分。string Ls_unused_172 = "Scalp Alert"; string Ls_unused_180 = "ST Alert"; string Ls_unused_188 = "LT Alert"; int Li_unused_200 = -1; int Li_unused_204 = 1; int Li_unused_208 = 0; int Lia_unused_228[12] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; int Li_unused_248 = 80; int Li_unused_252 = 20; for (int Li_108 = Bars - Gi_240; Li_108 >= 0; Li_108--) { Ld_124 = Low; if (Ld_124 == Ld_164) Ld_124 = 0.0; else { Ld_164 = Ld_124; if (Low[Li_108] - Ld_124 > Gi_244 * Point) Ld_124 = 0.0; else { for (int Li_112 = 1; Li_112 <= Gi_248; Li_112++) { Ld_132 = G_ibuf_336[Li_108 + Li_112]; if (Ld_132 != 0.0 && Ld_132 > Ld_124) G_ibuf_336[Li_108 + Li_112] = 0.0; } } } G_ibuf_336[Li_108] = Ld_124; Ld_124 = High; if (Ld_124 == Ld_156) Ld_124 = 0.0; else { Ld_156 = Ld_124; if (Ld_124 - High[Li_108] > Gi_244 * Point) Ld_124 = 0.0; else { for (Li_112 = 1; Li_112 <= Gi_248; Li_112++) { Ld_132 = G_ibuf_340[Li_108 + Li_112]; if (Ld_132 != 0.0 && Ld_132 < Ld_124) G_ibuf_340[Li_108 + Li_112] = 0.0; } } } G_ibuf_340[Li_108] = Ld_124; } Ld_156 = -1; int Li_116 = -1; Ld_164 = -1; int Li_120 = -1; for (Li_108 = Bars - Gi_240; Li_108 >= 0; Li_108--) { Ld_140 = G_ibuf_336[Li_108]; Ld_148 = G_ibuf_340[Li_108]; if (Ld_140 == 0.0 && Ld_148 == 0.0) continue; if (Ld_148 != 0.0) { if (Ld_156 > 0.0) { if (Ld_156 < Ld_148) G_ibuf_340[Li_116] = 0; else G_ibuf_340[Li_108] = 0; } if (Ld_156 < Ld_148 || Ld_156 < 0.0) { Ld_156 = Ld_148; Li_116 = Li_108; } Ld_164 = -1; } if (Ld_140 != 0.0) { if (Ld_164 > 0.0) { if (Ld_164 > Ld_140) G_ibuf_336[Li_120] = 0; else G_ibuf_336[Li_108] = 0; } if (Ld_140 < Ld_164 || Ld_164 < 0.0) { Ld_164 = Ld_140; Li_120 = Li_108; } Ld_156 = -1; } } for (Li_108 = Bars - 1; Li_108 >= 0; Li_108--) { if (Li_108 >= Bars - Gi_240) G_ibuf_336[Li_108] = 0.0; else { Ld_132 = G_ibuf_340[Li_108]; if (Ld_132 != 0.0) G_ibuf_340[Li_108] = Ld_132; } for (int index_284 = 0; G_ibuf_336 == 0.0 && G_ibuf_340 == 0.0; index_284++) { } Li_276 = index_284; for (index_284++; G_ibuf_336 == 0.0 && G_ibuf_340 == 0.0; index_284++) { } Li_280 = index_284; if (Gi_232 != Li_276 || Gi_236 != Li_280) { if (Gi_232 > Li_276 && AlertReversalOn && f0_00()) Alert("Alert : Market Reversal (", Period(), " ", Symbol(), ")"); Gi_232 = Li_276; Gi_236 = Li_280; } if (Gi_232 != Li_276 || Gi_236 != Li_280) { if (Gi_232 < Li_276 && AlertReversalOn && f0_00()) Alert("Alert : Market Reversal (", Period(), " ", Symbol(), ")"); Gi_232 = Li_276; Gi_236 = Li_280; } } return (0); 这不是反编译的代码吗? Max Pena 2015.09.06 16:45 #5266 谁能让这个指标在600版MT4或更高版本上运行? https://www.kreslik.com/forums/metatrader-4-platform/sns-shi-fibs-channel-t2222 附加的文件: sns_shi_fibs_channel.zip 41 kb debashis 2015.09.06 17:08 #5267 techmac: 这不是反编译的代码吗? 该指标的所有第一、第二和第三部分的代码。我不知道如何检查 是否反编译。 如果没有反编译,你能告诉我箭头的逻辑吗? Mladen Rakic 2015.09.06 18:25 #5268 maxbox: 请谁能让这个指标在600版本的MT4或更高版本上运行https://www.kreslik.com/forums/metatrader-4-platform/sns-shi-fibs-channel-t2222 "SNS_ObjectLibrary.ex4 "必须被改变。它包含以 "Time."、"String."、"Object."、"Rev. "和 "SNSLibrary. "开头的函数名称,自从新的mt4诞生后,简单函数的名称中不再允许出现"."。 但由于没有SNS_ObjectLibrary的源码,所以它不能被改变。 Mladen Rakic 2015.09.06 18:27 #5269 debashis: 我不知道如何检查是否反编译,你怎么说?如果没有反编译,你能告诉我箭头的逻辑吗? 驳斥 那是一个反编译的代码 Max Pena 2015.09.06 22:04 #5270 我试着改变了,但我不确定是否正确,我只有一个错误,在专家标签中,反编译后没有错误。 附加的文件: sns.png 27 kb sns_objectlibrary.mq4 34 kb sns_objectlibrary.mqh 6 kb sns_shi_fibs_channel.ex4 36 kb sns_shi_fibs_channel.mq4 19 kb 1...520521522523524525526527528529530531532533534...786 新评论 原因: 取消 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
只要将这些行的背面属性设置为真(像这样ObjectSet(name, OBJPROP_BACK, true);),标签就会消失。
谢谢你的帮助!
谁能告诉我这个指标的上/下箭头背后的逻辑?
代码部分:1
#property indicator_buffers 2
#property indicator_color1 Lime
#property indicator_color2 Red
string Gs_unused_76 = "USDIX,EURUSD,GBPUSD,USDCHF,USDJPY";
string Gs_unused_84 = "EURUSD,GBPUSD,USDCHF,USDJPY,USDCAD,AUDUSD,NZDUSD,EURJPY,EURGBP,AUDJPY";
string Gs_unused_92 = "EURUSD,GBPUSD,USDCHF,USDJPY,USDCAD,AUDUSD,NZDUSD,EURJPY,EURGBP,AUDJPY,GBPJPY,EURAUD,EURCAD,CHFJPY,AUDCAD,GBPCHF,EURCHF";
string Gs_unused_100 = "EURUSD,GBPUSD,USDCHF,USDJPY,USDCAD,AUDUSD,NZDUSD,EURJPY,EURGBP,AUDJPY,GBPJPY,EURAUD,EURCAD,CHFJPY,AUDCAD,GBPCHF,EURCHF,NZDJPY,CADJPY,AUDNZD,GBPAUD,GBPCAD";
int Gi_unused_168 = 1;
bool Gi_unused_188 = FALSE;
bool Gi_unused_192 = FALSE;
string Gs_unused_196 = "Virt_stop_buy_1";
string Gs_unused_204 = "Virt_stop_sell_1";
int G_timeframe_212 = 0;
string Gs_216;
double Gda_unused_224[];
double Gda_unused_228[];
int Gi_232;
int Gi_236;
int Gi_240 = 100;
int Gi_244 = 50;
int Gi_248 = 25;
int G_bars_252 = 0;
string Gs_unused_256;
int G_period_264 = 17;
int G_ma_method_268 = MODE_EMA;
bool Gi_unused_272 = FALSE;
bool Gi_unused_276 = FALSE;
string Gs_unused_280 = "Virt_buy_profit";
string Gs_unused_288 = "Virt_sell_profit";
int G_applied_price_296 = PRICE_OPEN;
int G_period_300 = 121;
int G_ma_method_304 = MODE_SMMA;
int G_applied_price_308 = PRICE_CLOSE;
extern int ArrowType = 0;
extern bool AlertOn = FALSE;
extern bool AlertReversalOn = FALSE;
extern bool SendAnEmail = FALSE;
double Gd_unused_324;
bool Gi_332 = TRUE;
double G_ibuf_336[];
double G_ibuf_340[];
string Gs_344;
string Gs_352;
string Gs_360;
int Gi_unused_368;
int Gia_unused_392[1];
int Gia_unused_396[1];
int Gia_unused_404[100];
int Gia_unused_408[100];
int Gia_unused_412[100];
int Gia_unused_416[100];
bool Gi_unused_420 = TRUE;
bool Gi_unused_424 = TRUE;
bool Gi_unused_436 = FALSE;
double Gd_unused_440 = 0.0;
double Gd_unused_448 = 0.0;
int Gi_unused_456 = -1;
double Gd_unused_516 = 1.0;
bool Gi_unused_528 = TRUE;
int Gi_unused_532 = 10;
int Gi_536 = 0;
int Gi_540 = 0;
int Gi_544 = 0;
int Gi_548 = 0;
int Gi_552 = 0;
int Gi_556 = 0;
int Gi_unused_560 = 0;
int Gi_unused_564 = 0;
string Gs_dummy_568;
string Gs_dummy_576;
double G_ilow_584 = 0.0;
double G_ihigh_592 = 0.0;
int Gi_600 = 0;
int Gi_unused_604 = 10;
int Gi_unused_608 = 4;
int Gi_unused_612 = 3;
int Gi_unused_616 = 150;
int Gi_unused_620 = 21;
int Gi_unused_624 = 40;
int Gi_unused_628 = 21;
bool Gi_unused_632 = TRUE;
bool Gi_unused_636 = TRUE;
string Gs_644;
string Gs_652;
string Gs_unused_660;
datetime G_time_668 = 0;
datetime G_time_6688 = 0;
string f0_1() {
string timeframe_4;
switch (Period()) {
case PERIOD_M1:
timeframe_4 = "M1";
break;
case PERIOD_M5:
timeframe_4 = "M5";
break;
case PERIOD_M15:
timeframe_4 = "M15";
break;
case PERIOD_M30:
timeframe_4 = "M30";
break;
case PERIOD_H1:
timeframe_4 = "H1";
break;
case PERIOD_H4:
timeframe_4 = "H4";
break;
case PERIOD_D1:
timeframe_4 = "D1";
break;
case PERIOD_W1:
timeframe_4 = "W1";
break;
case PERIOD_MN1:
timeframe_4 = "MN1";
break;
default:
timeframe_4 = Period();
}
return (timeframe_4);
}
int init() {
if (ArrowType == 0) {
SetIndexStyle(0, DRAW_ARROW);
SetIndexArrow(0, 233);
SetIndexStyle(1, DRAW_ARROW);
SetIndexArrow(1, 234);
} else {
if (ArrowType == 1) {
SetIndexStyle(0, DRAW_ARROW);
SetIndexArrow(0, 225);
SetIndexStyle(1, DRAW_ARROW);
SetIndexArrow(1, 226);
} else {
if (ArrowType == 2) {
SetIndexStyle(0, DRAW_ARROW);
SetIndexArrow(0, SYMBOL_ARROWUP);
SetIndexStyle(1, DRAW_ARROW);
SetIndexArrow(1, SYMBOL_ARROWDOWN);
} else {
if (ArrowType == 3) {
SetIndexStyle(0, DRAW_ARROW);
SetIndexArrow(0, 221);
SetIndexStyle(1, DRAW_ARROW);
SetIndexArrow(1, 222);
} else {
if (ArrowType == 4) {
SetIndexStyle(0, DRAW_ARROW);
SetIndexArrow(0, 217);
SetIndexStyle(1, DRAW_ARROW);
SetIndexArrow(1, 218);
} else {
if (ArrowType == 5) {
SetIndexStyle(0, DRAW_ARROW);
SetIndexArrow(0, 228);
SetIndexStyle(1, DRAW_ARROW);
SetIndexArrow(1, 230);
} else {
if (ArrowType == 6) {
SetIndexStyle(0, DRAW_ARROW);
SetIndexArrow(0, 236);
SetIndexStyle(1, DRAW_ARROW);
SetIndexArrow(1, 238);
} else {
if (ArrowType == 7) {
SetIndexStyle(0, DRAW_ARROW);
SetIndexArrow(0, 246);
SetIndexStyle(1, DRAW_ARROW);
SetIndexArrow(1, 248);
} else {
if (ArrowType == 8) {
SetIndexStyle(0, DRAW_ARROW);
SetIndexArrow(0, SYMBOL_THUMBSUP);
SetIndexStyle(1, DRAW_ARROW);
SetIndexArrow(1, SYMBOL_THUMBSDOWN);
} else {
if (ArrowType == 9) {
SetIndexStyle(0, DRAW_ARROW);
SetIndexArrow(0, 71);
SetIndexStyle(1, DRAW_ARROW);
SetIndexArrow(1, 72);
}
}
}
}
}
}
}
}
}
}
SetIndexBuffer(0, G_ibuf_336);
SetIndexBuffer(1, G_ibuf_340);
SetIndexEmptyValue(0, 0.0);
IndicatorShortName("(" + Gi_240 + "," + Gi_244 + "," + Gi_248 + ")");
switch (G_ma_method_268) {
case MODE_EMA:
Gs_652 = "PRICE";
break;
case MODE_SMMA:
Gs_652 = "PRICE";
break;
case MODE_LWMA:
Gs_652 = "PRICE";
break;
default:
G_ma_method_268 = 0;
Gs_652 = "PRICE";
}
switch (G_ma_method_304) {
case MODE_EMA:
Gs_unused_660 = "PRICE";
break;
case MODE_SMMA:
Gs_unused_660 = "PRICE";
break;
case MODE_LWMA:
Gs_unused_660 = "PRICE";
break;
default:
G_ma_method_304 = 0;
Gs_unused_660 = "PRICE";
}
Gs_644 = Symbol() + " (" + f0_1() + "): ";
IndicatorShortName("Probability Meter");
if (Symbol() == "GBPJPY" || Symbol() == "EURJPY" || Symbol() == "USDJPY" || Symbol() == "GOLD" || Symbol() == "USDMXN") Gi_unused_368 = 2;
if (Symbol() == "GBPUSD" || Symbol() == "EURUSD" || Symbol() == "NZDUSD" || Symbol() == "USDCHF" || Symbol() == "USDCAD" || Symbol() == "AUDUSD" || Symbol() == "EURUSD" ||
Symbol() == "EURCHF" || Symbol() == "EURGBP" || Symbol() == "EURCAD" || Symbol() == "EURAUD" || Symbol() == "AUDNZD") Gi_unused_368 = 4;
return (0);
}
代码第2部分。
ObjectsDeleteAll();
}
int f0_0() {
datetime time_0 = Time[0];
if (G_time_668 != time_0) {
G_time_668 = time_0;
return (1);
}
return (0);
}
int f0_00() {
datetime time_0 = Time[0];
if (G_time_6688 != time_0) {
G_time_6688 = time_0;
return (1);
}
return (0);
}
void f0_2() {
double Lda_unused_80[];
double Lda_unused_84[];
double Lda_unused_88[];
int Lia_unused_148[30];
double istochastic_0 = iStochastic(NULL, 0, 10, 5, 5, MODE_EMA, 1, MODE_MAIN, 0);
if (istochastic_0 = 25.0) Gs_216 = "91%";
else {
if (istochastic_0 >= 75.0 && istochastic_0 <= 88.0) Gs_216 = "83%";
else {
if (istochastic_0 = 12.0) Gs_216 = "76%";
else {
if (istochastic_0 >= 88.0) Gs_216 = "62%";
else {
if (istochastic_0 <= 12.0) Gs_216 = "94%";
else
if (istochastic_0 >= 70.0) Gs_216 = "78%";
}
}
}
}
double ima_8 = iMA(NULL, 0, 6, 0, MODE_SMA, PRICE_CLOSE, 0);
double ima_16 = iMA(NULL, 0, 24, 0, MODE_EMA, PRICE_CLOSE, 0);
double ima_24 = iMA(NULL, 0, 100, 0, MODE_EMA, PRICE_CLOSE, 0);
double ima_32 = iMA(NULL, 0, 500, 0, MODE_SMA, PRICE_CLOSE, 0);
double istochastic_40 = iStochastic(NULL, 0, 10, 5, 5, MODE_EMA, 0, MODE_MAIN, 0);
if (ima_8 > ima_16) Gs_344 = "Up Trend";
else
if (ima_16 > ima_8) Gs_344 = "Down Trend";
if (ima_24 > ima_32) Gs_352 = "UP";
else
if (ima_32 > ima_24) Gs_352 = "DOWN";
if (istochastic_40 < 30.0) Gs_360 = "Support Area";
else {
if (istochastic_40 > 70.0) Gs_360 = "Resistance";
else Gs_360 = "Normal";
}
string Ls_48 = "";
int Li_unused_56 = 1;
if (Digits < 4) Gd_unused_324 = 0.01;
else Gd_unused_324 = 0.0001;
if (G_bars_252 != Bars) G_bars_252 = Bars;
double iatr_60 = iATR(Symbol(), Period(), 5, 1);
double Ld_68 = 0.61 * MathRound(iatr_60 * MathPow(7, Digits));
int Li_unused_104 = 0;
double Ld_unused_108 = 0.0;
double Ld_unused_116 = 0.0;
double Ld_unused_124 = 0.0;
double Ld_unused_132 = 0.0;
int Li_unused_140 = 50;
double Ld_152 = 1.0 * Ld_68;
Ls_48 = Ls_48
+ "\n"
+ "\n"
+ "";
Comment(Ls_48);
if (ObjectFind("LV") < 0) {
ObjectCreate("LV", OBJ_LABEL, 0, 0, 0);
ObjectSetText("LV", " BINARY PROFITS TURBO", 9, "Tahoma Bold", White);
ObjectSet("LV", OBJPROP_CORNER, 0);
ObjectSet("LV", OBJPROP_BACK, FALSE);
ObjectSet("LV", OBJPROP_XDISTANCE, 13);
ObjectSet("LV", OBJPROP_YDISTANCE, 23);
}
if (ObjectFind("LV3") < 0) {
ObjectCreate("LV3", OBJ_LABEL, 0, 0, 0);
ObjectSetText("LV3", "Probability: " + Gs_216 + "", 9, "Tahoma Bold", White);
ObjectSet("LV3", OBJPROP_CORNER, 0);
ObjectSet("LV3", OBJPROP_BACK, FALSE);
ObjectSet("LV3", OBJPROP_XDISTANCE, 13);
ObjectSet("LV3", OBJPROP_YDISTANCE, 63);
}
if (ObjectFind("LV22") < 0) {
ObjectCreate("LV22", OBJ_LABEL, 0, 0, 0);
ObjectSetText("LV22", "Short Term Trend: " + Gs_344 + "", 9, "Tahoma Bold", White);
ObjectSet("LV22", OBJPROP_CORNER, 0);
ObjectSet("LV22", OBJPROP_BACK, FALSE);
ObjectSet("LV22", OBJPROP_XDISTANCE, 13);
ObjectSet("LV22", OBJPROP_YDISTANCE, 82);
}
if (ObjectFind("LV222") < 0) {
ObjectCreate("LV222", OBJ_LABEL, 0, 0, 0);
ObjectSetText("LV222", "Long Term Trend: " + Gs_352 + " Trend", 9, "Tahoma Bold", White);
ObjectSet("LV222", OBJPROP_CORNER, 0);
ObjectSet("LV222", OBJPROP_BACK, FALSE);
ObjectSet("LV222", OBJPROP_XDISTANCE, 13);
ObjectSet("LV222", OBJPROP_YDISTANCE, 123);
}
if (ObjectFind("LV2222") < 0) {
ObjectCreate("LV2222", OBJ_LABEL, 0, 0, 0);
ObjectSetText("LV2222", "Market Condition : " + Gs_360 + "", 9, "Tahoma Bold", White);
ObjectSet("LV2222", OBJPROP_CORNER, 0);
ObjectSet("LV2222", OBJPROP_BACK, FALSE);
ObjectSet("LV2222", OBJPROP_XDISTANCE, 13);
ObjectSet("LV2222", OBJPROP_YDISTANCE, 143);
}
if (ObjectFind("LV3222") < 0) {
ObjectCreate("LV3222", OBJ_LABEL, 0, 0, 0);
ObjectSetText("LV3222", "TRADE RISK : " + DoubleToStr(Ld_152, 0) + "", 9, "Tahoma Bold", White);
ObjectSet("LV3222", OBJPROP_CORNER, 0);
ObjectSet("LV3222", OBJPROP_BACK, FALSE);
ObjectSet("LV3222", OBJPROP_XDISTANCE, 13);
ObjectSet("LV3222", OBJPROP_YDISTANCE, 183);
}
if (ObjectFind("BKGR") < 0) {
ObjectCreate("BKGR", OBJ_LABEL, 0, 0, 0);
ObjectSetText("BKGR", "g", 165, "Webdings", Red);
ObjectSet("BKGR", OBJPROP_CORNER, 0);
ObjectSet("BKGR", OBJPROP_BACK, TRUE);
ObjectSet("BKGR", OBJPROP_XDISTANCE, 5);
ObjectSet("BKGR", OBJPROP_YDISTANCE, 15);
}
if (ObjectFind("BKGR2") < 0) {
ObjectCreate("BKGR2", OBJ_LABEL, 0, 0, 0);
ObjectSetText("BKGR2", "g", 165, "Webdings", Red);
ObjectSet("BKGR2", OBJPROP_BACK, TRUE);
ObjectSet("BKGR2", OBJPROP_XDISTANCE, 5);
ObjectSet("BKGR2", OBJPROP_YDISTANCE, 50);
}
if (ObjectFind("BKGR3") < 0) {
ObjectCreate("BKGR3", OBJ_LABEL, 0, 0, 0);
ObjectSetText("BKGR3", "g", 160, "Webdings", Black);
ObjectSet("BKGR3", OBJPROP_CORNER, 0);
ObjectSet("BKGR3", OBJPROP_BACK, TRUE);
ObjectSet("BKGR3", OBJPROP_XDISTANCE, 3);
ObjectSet("BKGR3", OBJPROP_YDISTANCE, 45);
}
}
int start() {
int Li_12;
double ima_16;
double ima_24;
double ima_32;
double ima_40;
double ima_48;
double ima_56;
double Ld_72;
double Ld_80;
double idemarker_92;
double idemarker_100;
double Ld_124;
double Ld_132;
double Ld_140;
double Ld_148;
double Ld_156;
double Ld_164;
int Lia_unused_212[12][1000];
double Lda_unused_216[12][1000];
int Lia_unused_220[1000];
double Lda_unused_224[1000];
bool Lba_unused_232[12];
string Lsa_unused_236[12];
string Lsa_unused_240[12];
int Li_276;
int Li_280;
Gi_536 = (iHigh(NULL, PERIOD_D1, 0) - iLow(NULL, PERIOD_D1, 0)) / Point / 10.0;
Gi_540 = (iHigh(NULL, PERIOD_D1, 1) - iLow(NULL, PERIOD_D1, 1)) / Point / 10.0;
for (Gi_600 = 1; Gi_600 <= 5; Gi_600++) Gi_544 = Gi_544 + (iHigh(NULL, PERIOD_D1, Gi_600) - iLow(NULL, PERIOD_D1, Gi_600)) / Point / 10.0;
for (Gi_600 = 1; Gi_600 <= 10; Gi_600++) Gi_548 = Gi_548 + (iHigh(NULL, PERIOD_D1, Gi_600) - iLow(NULL, PERIOD_D1, Gi_600)) / Point / 10.0;
for (Gi_600 = 1; Gi_600 <= 20; Gi_600++) Gi_552 = Gi_552 + (iHigh(NULL, PERIOD_D1, Gi_600) - iLow(NULL, PERIOD_D1, Gi_600)) / Point / 10.0;
Gi_544 /= 5;
Gi_548 /= 10;
Gi_552 /= 20;
Gi_556 = (Gi_536 + Gi_540 + Gi_544 + Gi_548 + Gi_552) / 5;
G_ilow_584 = iLow(NULL, PERIOD_D1, 0);
G_ihigh_592 = iHigh(NULL, PERIOD_D1, 0);
Gi_unused_560 = (Bid - G_ilow_584) / Point / 10.0;
Gi_unused_564 = (G_ihigh_592 - Bid) / Point / 10.0;
string Ls_unused_0 = Period();
if (Gi_332) f0_2();
double iadx_64 = iADX(NULL, 0, 21, PRICE_CLOSE, MODE_MAIN, 0);
int Li_88 = IndicatorCounted();
if (Li_88 < 0) return (-1);
if (Li_88 > 0) Li_88--;
int Li_8 = Bars - Li_88;
for (Gi_600 = 0; Gi_600 <= Li_8; Gi_600++) {
Li_12 = Gi_600;
Ld_72 = 0;
Ld_80 = 0;
for (Li_12 = Gi_600; Li_12 <= Gi_600 + 9; Li_12++) Ld_80 += MathAbs(High[Li_12] - Low[Li_12]);
Ld_72 = Ld_80 / 10.0;
ima_16 = iMA(NULL, 0, G_period_264, 0, G_ma_method_268, G_applied_price_296, Gi_600);
ima_32 = iMA(NULL, 0, G_period_264, 0, G_ma_method_268, G_applied_price_296, Gi_600 + 1);
ima_48 = iMA(NULL, 0, G_period_264, 0, G_ma_method_268, G_applied_price_296, Gi_600 - 1);
ima_24 = iMA(NULL, 0, G_period_300, 0, G_ma_method_304, G_applied_price_308, Gi_600);
ima_40 = iMA(NULL, 0, G_period_300, 0, G_ma_method_304, G_applied_price_308, Gi_600 + 1);
ima_56 = iMA(NULL, 0, G_period_300, 0, G_ma_method_304, G_applied_price_308, Gi_600 - 1);
HideTestIndicators(TRUE);
idemarker_92 = iDeMarker(NULL, 0, 14, 0);
idemarker_100 = iDeMarker(NULL, 0, 14, 1);
HideTestIndicators(FALSE);
if (ima_16 > ima_24 && ima_32 ima_56 && idemarker_92 < 0.8) {
G_ibuf_336[Gi_600] = Low[Gi_600] - 1.5 * Ld_72;
if (f0_0()) {
if (AlertOn) {
Gs_unused_256 = "CALL ALERT";
Alert(Gs_644 + Gs_652 + " (" + G_period_264 + ") " + "CALL ALERT ");
}
if (SendAnEmail) {
Gs_unused_256 = "CALL ALERT";
SendMail(Gs_644, Gs_652 + " (" + G_period_264 + ") " + "CALL ALERT");
}
}
} else {
if (ima_16 ima_40 && ima_48 0.2) {
G_ibuf_340[Gi_600] = High[Gi_600] + 1.5 * Ld_72;
if (f0_0()) {
if (AlertOn) {
Gs_unused_256 = "PUT ALERT";
Alert(Gs_644 + Gs_652 + " (" + G_period_264 + ") " + "PUT ALERT");
}
if (SendAnEmail) {
Gs_unused_256 = "PUT ALERT";
SendMail(Gs_644, Gs_652 + " (" + G_period_264 + ") " + "PUT ALERT");
}
}
}
}
}
代码第3部分。
string Ls_unused_180 = "ST Alert";
string Ls_unused_188 = "LT Alert";
int Li_unused_200 = -1;
int Li_unused_204 = 1;
int Li_unused_208 = 0;
int Lia_unused_228[12] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
int Li_unused_248 = 80;
int Li_unused_252 = 20;
for (int Li_108 = Bars - Gi_240; Li_108 >= 0; Li_108--) {
Ld_124 = Low;
if (Ld_124 == Ld_164) Ld_124 = 0.0;
else {
Ld_164 = Ld_124;
if (Low[Li_108] - Ld_124 > Gi_244 * Point) Ld_124 = 0.0;
else {
for (int Li_112 = 1; Li_112 <= Gi_248; Li_112++) {
Ld_132 = G_ibuf_336[Li_108 + Li_112];
if (Ld_132 != 0.0 && Ld_132 > Ld_124) G_ibuf_336[Li_108 + Li_112] = 0.0;
}
}
}
G_ibuf_336[Li_108] = Ld_124;
Ld_124 = High;
if (Ld_124 == Ld_156) Ld_124 = 0.0;
else {
Ld_156 = Ld_124;
if (Ld_124 - High[Li_108] > Gi_244 * Point) Ld_124 = 0.0;
else {
for (Li_112 = 1; Li_112 <= Gi_248; Li_112++) {
Ld_132 = G_ibuf_340[Li_108 + Li_112];
if (Ld_132 != 0.0 && Ld_132 < Ld_124) G_ibuf_340[Li_108 + Li_112] = 0.0;
}
}
}
G_ibuf_340[Li_108] = Ld_124;
}
Ld_156 = -1;
int Li_116 = -1;
Ld_164 = -1;
int Li_120 = -1;
for (Li_108 = Bars - Gi_240; Li_108 >= 0; Li_108--) {
Ld_140 = G_ibuf_336[Li_108];
Ld_148 = G_ibuf_340[Li_108];
if (Ld_140 == 0.0 && Ld_148 == 0.0) continue;
if (Ld_148 != 0.0) {
if (Ld_156 > 0.0) {
if (Ld_156 < Ld_148) G_ibuf_340[Li_116] = 0;
else G_ibuf_340[Li_108] = 0;
}
if (Ld_156 < Ld_148 || Ld_156 < 0.0) {
Ld_156 = Ld_148;
Li_116 = Li_108;
}
Ld_164 = -1;
}
if (Ld_140 != 0.0) {
if (Ld_164 > 0.0) {
if (Ld_164 > Ld_140) G_ibuf_336[Li_120] = 0;
else G_ibuf_336[Li_108] = 0;
}
if (Ld_140 < Ld_164 || Ld_164 < 0.0) {
Ld_164 = Ld_140;
Li_120 = Li_108;
}
Ld_156 = -1;
}
}
for (Li_108 = Bars - 1; Li_108 >= 0; Li_108--) {
if (Li_108 >= Bars - Gi_240) G_ibuf_336[Li_108] = 0.0;
else {
Ld_132 = G_ibuf_340[Li_108];
if (Ld_132 != 0.0) G_ibuf_340[Li_108] = Ld_132;
}
for (int index_284 = 0; G_ibuf_336 == 0.0 && G_ibuf_340 == 0.0; index_284++) {
}
Li_276 = index_284;
for (index_284++; G_ibuf_336 == 0.0 && G_ibuf_340 == 0.0; index_284++) {
}
Li_280 = index_284;
if (Gi_232 != Li_276 || Gi_236 != Li_280) {
if (Gi_232 > Li_276 && AlertReversalOn && f0_00()) Alert("Alert : Market Reversal (", Period(), " ", Symbol(), ")");
Gi_232 = Li_276;
Gi_236 = Li_280;
}
if (Gi_232 != Li_276 || Gi_236 != Li_280) {
if (Gi_232 < Li_276 && AlertReversalOn && f0_00()) Alert("Alert : Market Reversal (", Period(), " ", Symbol(), ")");
Gi_232 = Li_276;
Gi_236 = Li_280;
}
}
return (0);代码第3部分。
string Ls_unused_180 = "ST Alert";
string Ls_unused_188 = "LT Alert";
int Li_unused_200 = -1;
int Li_unused_204 = 1;
int Li_unused_208 = 0;
int Lia_unused_228[12] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
int Li_unused_248 = 80;
int Li_unused_252 = 20;
for (int Li_108 = Bars - Gi_240; Li_108 >= 0; Li_108--) {
Ld_124 = Low;
if (Ld_124 == Ld_164) Ld_124 = 0.0;
else {
Ld_164 = Ld_124;
if (Low[Li_108] - Ld_124 > Gi_244 * Point) Ld_124 = 0.0;
else {
for (int Li_112 = 1; Li_112 <= Gi_248; Li_112++) {
Ld_132 = G_ibuf_336[Li_108 + Li_112];
if (Ld_132 != 0.0 && Ld_132 > Ld_124) G_ibuf_336[Li_108 + Li_112] = 0.0;
}
}
}
G_ibuf_336[Li_108] = Ld_124;
Ld_124 = High;
if (Ld_124 == Ld_156) Ld_124 = 0.0;
else {
Ld_156 = Ld_124;
if (Ld_124 - High[Li_108] > Gi_244 * Point) Ld_124 = 0.0;
else {
for (Li_112 = 1; Li_112 <= Gi_248; Li_112++) {
Ld_132 = G_ibuf_340[Li_108 + Li_112];
if (Ld_132 != 0.0 && Ld_132 < Ld_124) G_ibuf_340[Li_108 + Li_112] = 0.0;
}
}
}
G_ibuf_340[Li_108] = Ld_124;
}
Ld_156 = -1;
int Li_116 = -1;
Ld_164 = -1;
int Li_120 = -1;
for (Li_108 = Bars - Gi_240; Li_108 >= 0; Li_108--) {
Ld_140 = G_ibuf_336[Li_108];
Ld_148 = G_ibuf_340[Li_108];
if (Ld_140 == 0.0 && Ld_148 == 0.0) continue;
if (Ld_148 != 0.0) {
if (Ld_156 > 0.0) {
if (Ld_156 < Ld_148) G_ibuf_340[Li_116] = 0;
else G_ibuf_340[Li_108] = 0;
}
if (Ld_156 < Ld_148 || Ld_156 < 0.0) {
Ld_156 = Ld_148;
Li_116 = Li_108;
}
Ld_164 = -1;
}
if (Ld_140 != 0.0) {
if (Ld_164 > 0.0) {
if (Ld_164 > Ld_140) G_ibuf_336[Li_120] = 0;
else G_ibuf_336[Li_108] = 0;
}
if (Ld_140 < Ld_164 || Ld_164 < 0.0) {
Ld_164 = Ld_140;
Li_120 = Li_108;
}
Ld_156 = -1;
}
}
for (Li_108 = Bars - 1; Li_108 >= 0; Li_108--) {
if (Li_108 >= Bars - Gi_240) G_ibuf_336[Li_108] = 0.0;
else {
Ld_132 = G_ibuf_340[Li_108];
if (Ld_132 != 0.0) G_ibuf_340[Li_108] = Ld_132;
}
for (int index_284 = 0; G_ibuf_336 == 0.0 && G_ibuf_340 == 0.0; index_284++) {
}
Li_276 = index_284;
for (index_284++; G_ibuf_336 == 0.0 && G_ibuf_340 == 0.0; index_284++) {
}
Li_280 = index_284;
if (Gi_232 != Li_276 || Gi_236 != Li_280) {
if (Gi_232 > Li_276 && AlertReversalOn && f0_00()) Alert("Alert : Market Reversal (", Period(), " ", Symbol(), ")");
Gi_232 = Li_276;
Gi_236 = Li_280;
}
if (Gi_232 != Li_276 || Gi_236 != Li_280) {
if (Gi_232 < Li_276 && AlertReversalOn && f0_00()) Alert("Alert : Market Reversal (", Period(), " ", Symbol(), ")");
Gi_232 = Li_276;
Gi_236 = Li_280;
}
}
return (0);这不是反编译的代码吗?
谁能让这个指标在600版MT4或更高版本上运行?
https://www.kreslik.com/forums/metatrader-4-platform/sns-shi-fibs-channel-t2222
这不是反编译的代码吗?
该指标的所有第一、第二和第三部分的代码。我不知道如何检查 是否反编译。
如果没有反编译,你能告诉我箭头的逻辑吗?
请谁能让这个指标在600版本的MT4或更高版本上运行https://www.kreslik.com/forums/metatrader-4-platform/sns-shi-fibs-channel-t2222
"SNS_ObjectLibrary.ex4 "必须被改变。它包含以 "Time."、"String."、"Object."、"Rev. "和 "SNSLibrary. "开头的函数名称,自从新的mt4诞生后,简单函数的名称中不再允许出现"."。
但由于没有SNS_ObjectLibrary的源码,所以它不能被改变。
我不知道如何检查是否反编译,你怎么说?如果没有反编译,你能告诉我箭头的逻辑吗?
驳斥
那是一个反编译的代码
我试着改变了,但我不确定是否正确,我只有一个错误,在专家标签中,反编译后没有错误。