穆瑞数学交易系统 - 页 165

 

我非常喜欢这些冲突圈,想把它应用到我的MT4图表上。有一个可以使用的版本吗?Xard777几年前就做了一个,但时间框架库包含数组,这些数组对于现在的MetaEditor来说是不可读的。我试过了,但我没有得到它的工作。

 
krelian99:
我非常喜欢这些冲突圈,想把它应用到我的MT4图表上。有一个可以使用的版本吗?Xard777几年前就做了一个,但时间框架库包含数组,这些数组对于现在的MetaEditor来说是不可读的。我试过了,但我没有得到它的工作。

krelian99

你说的是哪个确切的代码?

 

我在另一个论坛和这里给Xard777写了一封PM,但他到现在还没有出现。我有一些时间,现在我看了头条。我很惭愧(所以我可以早点问你)。默里数学文件(http://www.forexfactory.com/showthre...73#post4071573) 是你、mladen、Xard777、igor等人的共同(?)作品。

在链接论坛的下一页是淘气的库。TimeFrameLib-v0.3.ex4

我想,它和MM文件是同一个团队的。你能做点什么吗,mladen?

 

你好,我试图学习更多关于MQL4的编程,主要是编辑现有的指标,如添加警报、额外的

信号,改变颜色和形状。

我相信下一个问题对你们中的大多数人来说一定很简单,但我已经试了半天了,而且我向你保证我试图

试图找到我自己的解决方案......

---

如何 "重新初始化 "一个像Murrey数学线的指标?

---

还有一个大问题

---

在几个周期(16、32、64、96)之后,指标应该何时被 "重新初始化"?

但是,如果图表完全超出了Murrey-Range(在时间周期内)怎么办?

如何处理这个问题?

---

以下是我试过的一些想法,但都不奏效。

概述-版本(附完整指标)

-----------------------------

外围指数 FirstBar = 0;

extern int periodtotake = 16;

外置 int SomeVar = 0;

int bn_v1 = 0,

bn_v2 = 0。

shift = 0。

i2 = 0, //那是什么?

WorkTime = 0, // <---

CurPeriods = 0; //<----

//NewPeriod = 0; // 忽略无用的尝试

int init()

{

//WorkTime = Time[0]; //错误的位置

//CurPeriods = Period(); //wrongPosition

//NewPeriod = periodtotake; //ignore useless try

//----

return(0);

}

//+------------------------------------------------------------------+

//|Custor指标的去初始化功能。

//+------------------------------------------------------------------+

int deinit()

{

//---- TODO:在这里添加你的代码

ObjectsDeleteAll(0, OBJ_HLINE)。

ObjectsDeleteAll(0, OBJ_VLINE); //添加VLINE

ObjectDelete(VLine_0);

ObjectDelete(VLine_1);

ObjectDelete(VLine_2);

int count=ArraySize(textArray);

for(int ch=0;ch<count;ch++) {

ObjectDelete(textArray[ch]);

ObjectDelete(lineArray[ch]);

}

//ObjectsDeleteAll(0, OBJ_TEXT);

//----

return(0);

}

//+------------------------------------------------------------------+

//|自定义指标迭代函数|

//+------------------------------------------------------------------+

int start()

{

if( (WorkTime != Time[0]) || (CurPeriods != Period() ) ) // <---!!!

{

//价格

bn_v1 = Lowest( NULL, 0, MODE_LOW, periodtotake+SomeVar, FirstBar ) 。

bn_v2 = Highest( NULL, 0, MODE_HIGH, periodtotake+SomeVar, FirstBar )。

v1 = Low。

v2 = 高。

//+------------------------------------------------------------------+

// 所有的计算方法

//+------------------------------------------------------------------+

// 结束 -- 这里我做错了一切

WorkTime = Time[0];

CurPeriods = Period();

}

//if( Time[periodtotake] >= periodtotake )

//if( CurPeriods>= periodtotake )

//{

// WindowRedraw()。

//}

//else

//{

//WindowRedraw()。

//}

//----

return(0);

}

如果你有时间,请写一些解释的话(为什么这样做,为什么不这样做,或者一些关键词,我最好仔细看看哪部分的

我最好仔细看看它)。

哦,如果我只想有一个工作的刷新Murrey,我会使用Murrey_Math_Line_X,但这也是为了学习......

完整的(工作进展中的)指标见附件。

非常感谢你花时间,一旦我的知识值得分享,我将努力 "回报";-)murrey2-z---murreymath-timeframe-colorless5d-fresh.mq4

 
hallo5534:
你好,我试图学习更多关于MQL4编程的知识,主要是编辑现有的指标,例如添加警报、附加的指标。

信号,改变颜色和形状。

我相信下一个问题对你们中的大多数人来说一定很容易,但我已经试了半天了,而且我向你保证,我曾试图

试图找到我自己的解决方案......

---

如何 "重新初始化 "一个像Murrey数学线的指标?

---

还有一个大问题

---

在几个周期(16、32、64、96)之后,指标应该何时被 "重新初始化"?

但是,如果图表完全超出了Murrey-Range(在时间周期内)怎么办?

如何处理这个问题?

---

以下是我试过的一些想法,但都不奏效。

概述-版本(附完整指标)

-----------------------------

外围指数 FirstBar = 0;

extern int periodtotake = 16;

外置 int SomeVar = 0;

int bn_v1 = 0,

bn_v2 = 0。

shift = 0。

i2 = 0, //那是什么?

WorkTime = 0, // <---

CurPeriods = 0; //<----

//NewPeriod = 0; // 忽略无用的尝试

int init()

{

//WorkTime = Time[0]; //错误的位置

//CurPeriods = Period(); //wrongPosition

//NewPeriod = periodtotake; //ignore useless try

//----

return(0);

}

//+------------------------------------------------------------------+

//|Custor指标的去初始化功能。

//+------------------------------------------------------------------+

int deinit()

{

//---- TODO:在这里添加你的代码

ObjectsDeleteAll(0, OBJ_HLINE)。

ObjectsDeleteAll(0, OBJ_VLINE); //添加VLINE

ObjectDelete(VLine_0);

ObjectDelete(VLine_1);

ObjectDelete(VLine_2);

int count=ArraySize(textArray);

for(int ch=0;ch<count;ch++) {

ObjectDelete(textArray[ch]);

ObjectDelete(lineArray[ch]);

}

//ObjectsDeleteAll(0, OBJ_TEXT);

//----

return(0);

}

//+------------------------------------------------------------------+

//|自定义指标迭代函数|

//+------------------------------------------------------------------+

int start()

{

if( (WorkTime != Time[0]) || (CurPeriods != Period() ) ) // <---!!!

{

//价格

bn_v1 = Lowest( NULL, 0, MODE_LOW, periodtotake+SomeVar, FirstBar ) 。

bn_v2 = Highest( NULL, 0, MODE_HIGH, periodtotake+SomeVar, FirstBar )。

v1 = Low。

v2 = 高。

//+------------------------------------------------------------------+

// 所有的计算方法

//+------------------------------------------------------------------+

// 结束 -- 这里我做错了一切

WorkTime = Time[0];

CurPeriods = Period();

}

//if( Time[periodtotake] >= periodtotake )

//if( CurPeriods>= periodtotake )

//{

// WindowRedraw()。

//}

//else

//{

//WindowRedraw()。

//}

//----

return(0);

}

如果你有时间,请写一些解释的话(为什么这样做,为什么不这样做,或者一些关键词,我最好仔细看看哪部分的

我最好仔细看看它)。

哦,如果我只想有一个工作的刷新Murrey,我会使用Murrey_Math_Line_X,但这也是为了学习......

完整的(工作进展中的)指标附在后面。

谢谢您抽出时间,一旦我的知识值得分享,我将努力 "回报";-)murrey2-z--murreymath-timeframe-colorless5d-fresh.mq4

如果你不改变参数、符号或时间框架,你不能重新初始化任何mql代码。

 
hallo5534:
你好,我试图学习更多关于MQL4编程的知识,主要是编辑现有的指标,例如添加警报、附加数据和其他信息。

信号,改变颜色和形状。

我相信下一个问题对你们中的大多数人来说一定很容易,但我已经试了半天了,而且我向你保证,我曾试图

试图找到我自己的解决方案......

---

如何 "重新初始化 "一个像Murrey数学线的指标?

---

还有一个大问题

---

在几个周期(16、32、64、96)之后,指标应该何时被 "重新初始化"?

但是,如果图表完全超出了Murrey-Range(在时间周期内)怎么办?

如何处理这个问题?

---

以下是我试过的一些想法,但都不奏效。

概述-版本(附完整指标)

-----------------------------

外围指数 FirstBar = 0;

extern int periodtotake = 16;

外置 int SomeVar = 0;

int bn_v1 = 0,

bn_v2 = 0。

shift = 0。

i2 = 0, //那是什么?

WorkTime = 0, // <---

CurPeriods = 0; //<----

//NewPeriod = 0; // 忽略无用的尝试

int init()

{

//WorkTime = Time[0]; //错误的位置

//CurPeriods = Period(); //wrongPosition

//NewPeriod = periodtotake; //ignore useless try

//----

return(0);

}

//+------------------------------------------------------------------+

//|Custor指标的去初始化功能。

//+------------------------------------------------------------------+

int deinit()

{

//---- TODO:在这里添加你的代码

ObjectsDeleteAll(0, OBJ_HLINE)。

ObjectsDeleteAll(0, OBJ_VLINE); //添加VLINE

ObjectDelete(VLine_0);

ObjectDelete(VLine_1);

ObjectDelete(VLine_2);

int count=ArraySize(textArray);

for(int ch=0;ch<count;ch++) {

ObjectDelete(textArray[ch]);

ObjectDelete(lineArray[ch]);

}

//ObjectsDeleteAll(0, OBJ_TEXT);

//----

return(0);

}

//+------------------------------------------------------------------+

//|自定义指标迭代函数|

//+------------------------------------------------------------------+

int start()

{

if( (WorkTime != Time[0]) || (CurPeriods != Period() ) ) // <---!!!

{

//价格

bn_v1 = Lowest( NULL, 0, MODE_LOW, periodtotake+SomeVar, FirstBar ) 。

bn_v2 = Highest( NULL, 0, MODE_HIGH, periodtotake+SomeVar, FirstBar )。

v1 = Low。

v2 = 高。

//+------------------------------------------------------------------+

// 所有的计算方法

//+------------------------------------------------------------------+

// 结束 -- 这里我做错了一切

WorkTime = Time[0];

CurPeriods = Period();

}

//if( Time[periodtotake] >= periodtotake )

//if( CurPeriods>= periodtotake )

//{

// WindowRedraw()。

//}

//else

//{

//WindowRedraw()。

//}

//----

return(0);

}

如果你有时间,请写一些解释的话(为什么这样做,为什么不这样做,或者一些关键词,我最好仔细看看哪部分的

我最好仔细看看它)。

哦,如果我只想有一个工作的刷新Murrey,我会使用Murrey_Math_Line_X,但这也是为了学习......

完整的(工作进展中的)指标见附件。

谢谢您抽出时间,一旦我的知识值得分享,我将努力 "回报";-)murrey2-z--murreymath-timeframe-colorless5d-fresh.mq4

Morro是对的:重新初始化是不可能的。

但是,你也不需要在启动程序退出前立即进行WindowRedraw()--无论该函数如何,它都会被重新绘制。只有当处理过程很耗时或者你把一些东西放在死循环中时,你才需要WindowRedraw()。

 
poster:
M-MATH v3指标m-math_v3.rar

你有这个指标可以在新版中使用吗?似乎无法将其加载到我的图表上?

 

对于新的构建:m-math_v3.mq4

附加的文件:
m-math_v3.mq4  23 kb
 

感谢伟大的系统

 

Murrey反弹水平

emurrey rebound levelss.ex4

附加的文件: