如何编码? - 页 98

 

如何使一个指标在另一个指标上工作?

如果你把基本移动平均线(作为指标包含在MT4中)放到另一个指标上,就有可能计算出该指标的MA,但如何改变一个自定义指标,使其有可能放到另一个指标上?

 

关于酒吧开放

你好。

我想运行一段代码,只有当一个新条形图被创建时(在条形图打开时)。

有没有人有这样的代码片段?

谢谢

 

为什么我的指标不能很好地工作????

#属性版权 "沈欣"

#property link "shenxinon@126.com"

#属性 indicator_separate_window

#属性 indicator_buffers 1

#属性 indicator_color1 SteelBlue

//#属性 indicator_minimum -0.01

//#属性 indicator_maximum 0.01

//---- 输入参数

extern int SMA1=12;

extern int SMA2=72;

//---- 缓冲区

double ExtMapBuffer1[]。

//---- 自定义区

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

//|自定义指标 初始化函数

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

int init()

{

//---- 指标

SetIndexStyle(0,DRAW_LINE);

SetIndexBuffer(0,ExtMapBuffer1);

string sName="RAVI指标"。

IndicatorShortName("RAVI指标("+SMA1+", "+SMA2+")")。

//----

return(0);

}

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

//|自定义指标去初始化功能|

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

int deinit()

{

//----

//----

return(0);

}

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

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

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

int start()

{

int counted_bars=IndicatorCounted()。

//----

if(counted_bars<0)return(-1);//如果有错误则退出并返回-1

如果(counted_bars>0) counted_bars--。

int pos = Bars-counted_bars;

双重sma1,sma2,r;

while(pos>=0)

{

sma1=iMA(NULL,0,SMA1,0,MODE_SMA,PRICE_CLOSE,pos)。

sma2=iMA(NULL,0,SMA2,0,MODE_SMA,PRICE_CLOSE,pos)。

r=((sma1-sma2)/sma2)*10000;

//Alert("r=",r)。

ExtMapBuffer1[pos]=r;

pos--。

}

return(0);

 

...

我已经得到了它

 
diffused:
你好。

我想只在新条形图创建时(条形图打开时)运行一段代码。

有没有人有这样的代码片段?

欢呼声

如果(Volume[0] == 1)

{DO...}

大的是

 

潮流信封EA

Hola

我在教MQL。

我读了《技术指标的使用--MQL4中的简单程序》--MQL4教程,但我没有找到类似的东西。

有没有可能给一个单杠着色?例如,在测试你的EA时,你可以给进入单杠着色......

在metatrader上,我没有看到任何观察系统,就像在所有的C语言编译器中看到我的变量数组的领域一样。

我想做这个愚蠢的系统。

当价格突破并接近趋势线时(请看图片中的黄色圆圈),我会打开一个警报,并给突破线着色。

但我的问题是,我只读到了趋势上升指标,而没有读到短周期的指标,为什么?

double maxprec= iHigh(NULL, PERIOD_M5,1);

double minprec=iLow(NULL, PERIOD_M5,1);

double chiusura2 = iClose(NULL,PERIOD_M15 ,2);

double chiusura = iClose(NULL,PERIOD_M15 ,1);

double chiu2 = iClose(NULL,PERIOD_M5 ,2);

double chiu = iClose(NULL,PERIOD_M5 ,1);

double apertura = iOpen(NULL,PERIOD_M15 ,0)

string rottura [3] = {" Nulla"," ROTTO"};

envelope15_1=iCustom(NULL, PERIOD_M15, "TrendEnvelopes_v1", 5,0,1);// trend envelope

if( chiusura2 > envelope15_2 && chiusura < envelope15_2 && apertura <= envelope15_2)

{

rot=1;

Alert ( " ha rotto SH M15");

}

else

rot=0;

Comment( ""\nBreak Enveolpe M 5= ", rottura[rot2],

"\nBrerak Enveolpe M 15= ", rottura[rot]

); // Alert
附加的文件:
eur_1.jpg  101 kb
 

这是正确的公式吗?

这是计算欧元/瑞士法郎交叉盘的点值的正确公式吗。

(1/(EUR/CHF))*10*(EUR/US)

一个点是0.0001。

以上是正确的公式?

 
lizmerrill:
这是计算欧元/瑞士法郎交叉盘的点值的正确公式吗?

(1/(EUR/CHF))*10*(EUR/US)

一个点是0.0001。

上面的公式正确吗?

使用此代码。

pipvalue=MarketInfo("EURCHF",MODE_TICKVALUE)。

希望这有帮助

 

需要代码来停止一定时间后的开仓行为

我已经看到了这个版块的所有帖子,并且我使用论坛顶部的谷歌搜索工具对所有论坛进行了研究,但我发现的并不是我所要的东西。

我需要的是一个代码,我必须在我的EA中实现,在某一小时后停止开立新的头寸,例如在格林威治时间15点后。这个参数 应该是一个设置,我可以从用户面板上修改。

如果我可以设置EA开仓的时间段,那就更好了,例如

X小时Y小时 开仓

谢谢您的帮助。

谢谢您的帮助。

 
mauro269:
我已经看到了这部分的所有帖子,我也用论坛顶部的谷歌搜索工具对所有的论坛进行了研究,但我发现的并不是我所要的东西。

我需要的是一个代码,我必须在我的EA中实现,在某一小时后停止开立新的头寸,例如在格林威治时间15点后。这个参数应该是一个设置,我可以从用户面板上修改。

如果我可以设置EA开仓的时间段,那就更好了,例如

X小时Y小时 开仓

谢谢你的帮助。

尊敬的先生

我是这样做的。

extern bool Use.Time.Filter = false;

extern string Server.Time.To.Start = "08:00"。

extern string Server.Time.To.Stop = "16:00";
start_time = StrToTime(TimeToStr(TimeCurrent(), TIME_DATE) + " " + Server.Time.To.Start)。

end_time = StrToTime(TimeToStr(TimeCurrent(), TIME_DATE) + " " + Server.Time.To.Stop)。

if(Use.Time.Filter && (TimeCurrent() = end_time)) return(0)。

希望这对你有帮助。

费鲁弗斯