MT4指标,自动绘制波段支撑压力,浪的形成点。

标签:
股票mt4自定义指标外汇 |
分类: MT4指标收集 |
http://s14/mw690/001DXNpCgy6SD8jerTL6d&690
//-----------------------------------------------------------------
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 DarkGoldenrod
#property indicator_color2 Blue
extern int ExtDepth = 12;
extern int ExtDeviation = 3;
extern int ExtBackstep = 2;
double g_ibuf_88[];
double g_ibuf_92[];
int g_time_96 = 0;
int gi_100;
int gi_104;
int gi_108;
double gd_112;
double gd_120;
double gd_128;
int init() {
IndicatorBuffers(2);
SetIndexStyle(0,
DRAW_SECTION);
SetIndexBuffer(0,
g_ibuf_88);
SetIndexBuffer(1,
g_ibuf_92);
SetIndexEmptyValue(0,
0.0);
SetIndexEmptyValue(1,
0.0);
ArraySetAsSeries(g_ibuf_88,
TRUE);
ArraySetAsSeries(g_ibuf_92,
TRUE);
IndicatorShortName("WolfWave");
return (0);
}
int deinit() {
for (int li_0 = 1; li_0 <=
5; li_0++) ObjectDelete("WW" + "" + li_0);
ObjectDelete("WW" +
"Line-2-4");
ObjectDelete("WW" +
"Line-1-3");
ObjectDelete("WW" +
"Line-1-4");
ObjectDelete("WW" +
"Line-2-5");
return (0);
}
int start() {
double ld_0;
double ld_8;
double ld_16;
double ld_24;
double ld_32;
double ld_40;
int lia_48[200];
int lia_52[6];
int li_56;
int shift_60;
int li_64;
int li_68;
double ld_72;
double ld_80;
double ld_88;
double ld_96;
int li_104;
int li_108;
int li_112;
int li_116;
int li_120;
int li_124 =
IndicatorCounted();
int li_unused_128 = 0;
string ls_132 = "None";
bool li_140 = FALSE;
if (Bars - 1 < ExtDepth)
return (0);
if (li_124 < 0) return
(-1);
if (li_124 > 0)
li_124--;
int li_144 = Bars -
ExtDepth;
if (li_124 == 0 || Bars -
li_124 > 2) li_56 = li_144;
else {
shift_60 = iBarShift(NULL, 0, gi_100, TRUE);
li_64 = iBarShift(NULL, 0, gi_104, TRUE);
li_68 = iBarShift(NULL, 0, gi_108, TRUE);
li_56 = li_64;
if (shift_60 < 0 || li_64 < 0 || li_68 < 0) li_56 =
li_144;
}
if (li_56 >= li_144 ||
g_time_96 != Time[Bars - 1]) {
g_time_96 = Time[Bars - 1];
for (int li_148 = Bars - 1; li_148 > 0; li_148--) {
g_ibuf_88[li_148] = 0.0;
g_ibuf_92[li_148] = 0.0;
}
li_56 = li_144;
}
for (li_148 = Bars - ExtDepth;
li_148 >= 0; li_148--) {
ld_0 = Low[iLowest(NULL, 0, MODE_LOW, ExtDepth, li_148)];
if (ld_0 == ld_40) ld_0 = 0.0;
else {
ld_40 = ld_0;
if (Low[li_148] - ld_0 > ExtDeviation * Point) ld_0 = 0.0;
else {
for (int li_152 = 1; li_152 <= ExtBackstep; li_152++) {
ld_8 = g_ibuf_88[li_148 + li_152];
if (ld_8 != 0.0 && ld_8 > ld_0) g_ibuf_88[li_148 +
li_152] = 0.0;
//-----------------------------------------------------------------
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 DarkGoldenrod
#property indicator_color2 Blue
extern int ExtDepth = 12;
extern int ExtDeviation = 3;
extern int ExtBackstep = 2;
double g_ibuf_88[];
double g_ibuf_92[];
int g_time_96 = 0;
int gi_100;
int gi_104;
int gi_108;
double gd_112;
double gd_120;
double gd_128;
int init() {
}
int deinit() {
}
int start() {