如何编码? - 页 99

 

谢谢Ferru,这正是我需要的!

你是伟大的!

 

翻译这个metastock-function

嗨。

你能用metastock语言中的mql编码这个函数吗?

ThroughtBars(1,MACD(),29)

先谢谢你

姜文

 

我使用趋势包络,但在上升运动中,关于趋势包络的缓冲区短写254564115的奇怪数字,所以我用一个简单的代码将其置于0,有其他方法可以不强制它为0吗?

TrendEnvUp = iCustom(NULL,0,IndicatorName4,2,0,0,0,0,0,0,0); // trendenvelopes

TrendEnvDown = iCustom(NULL,0,IndicatorName4,2,0,0,0,0,0,1,0); // trendenvelopes

if (TrendEnvUp > 10)

TrendEnvUp=0;

if (TrendEnvDown > 10)

TrendEnvDown=0;
 

我还有一个简单的问题,我无法解决。

我想为我收到的每个信号开立多头头寸。确切地说,我想为每个信号建立3个头寸,这样做的代码是什么。

谢谢

 

问题与

疑问

在我的EA中,我试图打印我的两个变量,但它没有工作。

**********************************************************

double m_10 = iMA(NULL, 0, 10, 0, MODE_SMA, PRICE_CLOSE, Current + 0);

double m_20 = iMA(NULL, 0, 20, 0, MODE_SMA, PRICE_CLOSE, Current + 0);

for(int i=1; i<500; i--)

{

m_10 = iMA(NULL, 0, 10, 0, MODE_SMA, PRICE_CLOSE, Current + i)。

m_20 = iMA(NULL, 0, 20, 0, MODE_SMA, PRICE_CLOSE, Current + i)。

打印(m_10+ " " + m_20)。

}

**********************************************************

这就是错误信息。

'[' 赋值预期

请帮助我!!

预先感谢。

 

这一行有问题... for(int i=1; i<500; i--)

用i++试试

for(int i=1; i<500; i++)

natsirte:

在我的EA中,我试图打印我的两个变量,但它没有工作。

**********************************************************

double m_10 = iMA(NULL, 0, 10, 0, MODE_SMA, PRICE_CLOSE, Current + 0);

double m_20 = iMA(NULL, 0, 20, 0, MODE_SMA, PRICE_CLOSE, Current + 0);

for(int i=1; i<500; i--)

{

m_10 = iMA(NULL, 0, 10, 0, MODE_SMA, PRICE_CLOSE, Current + i)。

m_20 = iMA(NULL, 0, 20, 0, MODE_SMA, PRICE_CLOSE, Current + i)。

打印(m_10+ " " + m_20)。

}

**********************************************************

这就是错误信息。

'[' 赋值预期

提前感谢。
 
natsirte:
尊敬的先生

在我的EA中,我试图打印我的两个变量,但它没有工作。

**********************************************************

double m_10 = iMA(NULL, 0, 10, 0, MODE_SMA, PRICE_CLOSE, Current + 0);

double m_20 = iMA(NULL, 0, 20, 0, MODE_SMA, PRICE_CLOSE, Current + 0);

for(int i=1; i<500; i--)

{

m_10 = iMA(NULL, 0, 10, 0, MODE_SMA, PRICE_CLOSE, Current + i)。

m_20 = iMA(NULL, 0, 20, 0, MODE_SMA, PRICE_CLOSE, Current + i)。

打印(m_10+ " " + m_20)。

}

**********************************************************

这就是错误信息。

'[' 赋值预期

请帮助我!!

提前感谢。

你声明了缓冲区吗?

double m_10[];

double m_20[];

冯玉祥

 

这样就可以了。

如果只是用于打印功能,不需要数组。

如果你需要它来画线,你需要别的东西来激活缓冲区。

而且for()函数需要向上计数,而不是向下。

************************************************** ********

int 当前。

double m_10 = iMA(NULL, 0, 10, 0, MODE_SMA, PRICE_CLOSE, Current + 0)。

double m_20 = iMA(NULL, 0, 20, 0, MODE_SMA, PRICE_CLOSE, Current + 0);

for(int i=1; i<500; i++){

m_10 = iMA(NULL, 0, 10, 0, MODE_SMA, PRICE_CLOSE, Current + i)。

m_20 = iMA(NULL, 0, 20, 0, MODE_SMA, PRICE_CLOSE, Current + i);

打印(m_10+ " " + m_20)。

}

************************************************** ********

FerruFx:
你声明了缓冲区吗?

double m_10[];

double m_20[];

缓冲区
 
mauro269:
我有另一个简单的问题,我无法解决。

我想为我收到的每个信号开立多头头寸。确切地说,我想为每个信号建立3个头寸,这样做的代码是什么。

谢谢

只要用3个OrderSend调用,而不是1个。

罗伯特

 

变量问题

你好。

我目前正在为一个专家编程,该专家根据前一栏的OHLC进行计算。

我的问题是这样的。

我有一个叫做 "var5 "的变量。

对于第一个被计算的柱子,var5是该柱子的开盘价。

对于随后的每一个柱子,var5是前一个柱子上var5的值,除以2。

我不知道如何在MQL中进行编码,我想知道是否有人能给我一个例子来说明如何做?

谢谢你的回答。