KimIV的有用功能 - 页 83 1...767778798081828384858687888990...128 新评论 House 2009.05.14 17:39 #821 i-Sessions也可以添加一个夜间会话,如23到01,即我可以添加自己,但我如何通过00.小时?请帮忙!!!。 SVV 2009.05.15 03:58 #822 帮助重新制作 e-TFL_v2! 如何使EA在一个方向上不是开一个仓位,而是同时开2或3个仓位。例如,我如何在0.5手和0.5手开立两个单向头寸,而不是一个手?或0.3+0.3+0.3手。 Arvis 2009.05.18 17:39 #823 你能告诉我如何设置终端,以便当你把它切换到俄语时,所有东西都用俄语书写,因为所有东西都是用象形文字书写的。 Ярослав 2009.05.18 19:55 #824 arvis >> : >> 我如何设置终端,以便当我把它切换到俄语时,它会用俄语说一切,因为我的语言是用象形文字写的。 在windows区域设置中,将语言设置为俄语,以便在不使用Unicode的应用程序中使用。 [删除] 2009.05.18 21:23 #825 你好,我有个问题要直接问Igor Kim,因为他是 i-SignalOfTrade 指标的作者(如果我没弄错的话)。 该指标完美地执行其所有功能,但在发送电子邮件时,日志中出现以下条目 邮件:'i-SignalOfTrade'失败 邮件:451 见http://pobox.com/~djb/docs/smtplf.html。 当然,这个消息并没有传到任何地方。 你能告诉我可能是什么问题以及如何解决吗? P.S. 邮件客户端配置正确,测试信息的发送和交付没有任何问题。 Дмитрий 2009.05.20 07:16 #826 下午好。你能告诉我谁知道吗?我正在用RTS指数工作。仓位大小由第三方程序计算,并通过txt文件传送给专家顾问。我在这里有两个问题。 1.由于启动块{...}只有在新的tick出现时才被激活,而指数中的tick很少,所以EA的执行会有延迟。 我把它放在了一个更频繁跳动的工具上(欧元兑美元),但我仍然想问--是否可以强制启动{...}? 2.我的经纪人允许的最大头寸大小是20手。我需要建立一个 100手的头寸。现在,我一次只开一个仓位。 但这需要很多时间,每个订单大约需要4秒。(即需要20秒才能开仓),有时这并不是好事。有什么办法能更快地做到这一点吗?(通过预先设定的止损单--对我来说不起作用)。 kombat 2009.05.20 07:34 #827 ADI1966 >> : 2.经纪人允许的最大头寸规模是20手。我需要建立一个100手的头寸。现在我正在陆续打开。 但这需要很多时间,每个订单大约需要4秒。(即需要20秒才能开仓),而有时这并不是好事。有什么办法能更快地做到这一点吗?(通过预先设置的止损单--对我不起作用)。 https://forum.mql4.com/ru/13567 Дмитрий 2009.05.20 09:35 #828 kombat писал(а)>> https://forum.mql4.com/ru/13567 阅读。 我没有理解错,在一个tick上,EA会同时向交易系统发送几个买单。 而不是等待服务器对第一个订单的接受和执行作出反应,然后是第二个订单,以此类推? ?? 到目前为止,我是这样做的--例子--(日志、真实账户、实时)。 10.55.13 - 下单买入市场20RTS - 这是前20手 10.55.13 - 请求被服务器过滤了 10.55.13 - 请求正在处理中 10.55.17 - 订单被打开 10.55.18 - 订单买入市场20RTS - 这是第二个20手 10.55.18 - 请求被服务器过滤了 10.55.19 - 请求正在处理中 10.55.22 - 订单被打开 10.55.23 - 订单买入市场20RTS - 这是第三次20手 10.55.23 - 请求被服务器过滤了 10.55.24 - 请求正在处理中 10.55.27 - 订单被打开 我想在4秒内打开整个仓位,即在10.55.17之前打开。 Useful features from KimIV 离题的MQL问题 Avalanche [删除] 2009.06.02 03:58 #829 ADI1966 писал(а)>> 2.经纪人允许的最大头寸规模是20手。我需要建立一个100手的头寸。现在我正在陆续打开。 但这需要很多时间,每个订单大约需要4秒。(即需要20秒才能开仓),有时这并不是好事。有什么办法能更快地做到这一点吗?(通过预先设定的止损单--对我来说不起作用)。 运行4个终端,那么4个请求将一次到达经销商处进行处理,而不是一个一个地处理。 [删除] 2009.06.04 09:17 #830 伊戈尔,你好! 请告诉我如何在现有的指标中实现声音通知? 例如,在ZigZag。如果你想在画新线的时候有声音,请在组织者那里登记。 //+------------------------------------------------------------------+ //| Zigzag.mq4| //| Copyright © 2005-2007, MetaQuotes Software Corp. //|https://www.metaquotes.net//| //+------------------------------------------------------------------+ #property copyright "Copyright © 2007, MetaQuotes Software Corp." #属性链接"https://www.metaquotes.net//" #property indicator_chart_window #property indicator_buffers 1 #property indicator_color1 Red //---- 指标参数 外部intDepth=12。 Extern inttern ExtDeviation=5; Extern inttern ExtBackstep=3; //---- 指示器缓冲区 双倍ZigzagBuffer[]。 双重HighMapBuffer[]。 Double LowMapBuffer[]; int level=3; // 重新计数的深度。 bool downloadhistory=false。 //+------------------------------------------------------------------+ //|自定义指标初始化功能 //+------------------------------------------------------------------+ int init() { IndicatorBuffers(3)。 //---- 绘图设置 SetIndexStyle(0,DRAW_SECTION)。 //---- 指示器缓冲区的映射 SetIndexBuffer(0,ZigzagBuffer)。 SetIndexBuffer(1,HighMapBuffer)。 SetIndexBuffer(2,LowMapBuffer)。 SetIndexEmptyValue(0,0.0)。 //---- 指标短名称 IndicatorShortName("ZigZag("+ExtDepth+", "+ExtDeviation+", "+ExtBackstep+")")。 //---- 初始化完成 return(0); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int start() { int i, counted_bars = IndicatorCounted()。 int limit,counterZ,whatlookfor; int shift,back,lasthighpos,lastlowpos。 double val,res; 双层Curlow,Curhigh,lasthigh,lastlow。 如果(counted_bars==0 && downloadhistory)//历史记录被下载了 { ArrayInitialize(ZigzagBuffer,0.0)。 ArrayInitialize(HighMapBuffer,0.0)。 ArrayInitialize(LowMapBuffer,0.0;) } 如果(counted_bars==0) { limit=Bars-ExtDepth。 downloadhistory=true。 } 如果(counted_bars>0) { while (counterZ<level && i<100) { res=ZigzagBuffer[i]; 如果(res!=0)counterZ++。 i++; } i--; limit=i。 如果(LowMapBuffer[i]!=0) { curlow=LowMapBuffer[i]; whatlookfor=1。 } 否则 { curhigh=HighMapBuffer[i]; whatlookfor=-1。 } for (i=limit-1;i>=0;i--) { ZigzagBuffer[i]=0.0。 LowMapBuffer[i]=0.0。 HighMapBuffer[i]=0.0。 } } for(shift=limit; shift>=0; shift--) { val=Low[iLowest(NULL,0,MODE_LOW,ExtDepth,shift)] 。 如果(val==lastlow)val=0.0。 否则 { lastlow=val。 如果((Low[shift]-val)>(ExtDeviation*Point)) val=0.0。 否则 { for(back=1; back<=ExtBackstep; back++) { res=LowMapBuffer[shift+back]。 如果((res!=0)&&(res>val))LowMapBuffer[shift+back]=0.0。 } } } 如果(Low[shift]==val)LowMapBuffer[shift]=val;否则LowMapBuffer[shift]=0.0。 //----高 val=High[iHighest(NULL,0,MODE_HIGH,ExtDepth,shift)]。 如果(val==lasthigh)val=0.0。 否则 { lasthigh=val; 如果((val-High[shift])>(ExtDeviation*Point)) val=0.0。 否则 { for(back=1; back<=ExtBackstep; back++) { res=HighMapBuffer[shift+back]。 如果((res!=0)&&(res<val))HighMapBuffer[shift+back]=0.0。 } } } 如果(High[shift]==val)HighMapBuffer[shift]=val;否则HighMapBuffer[shift]=0.0。 } // 最后切割 如果(whatlookfor==0) { lastlow=0。 lasthigh=0。 } 否则 { lastlow=curlow。 lasthigh=curhigh。 } for (shift=limit;shift>=0;shift--) { res=0.0。 switch(whatlookfor) { 案例0://寻找峰值或草坪 如果(lastlow==0 && lasthigh==0) { 如果(HighMapBuffer[shift]!=0) { lasthigh=high[shift]。 lasthighpos=shift。 whatlookfor=-1。 ZigzagBuffer[shift]=lasthigh。 res=1。 } 如果(LowMapBuffer[shift]=0) { lastlow=Low[shift]。 Lastlowpos=shift。 whatlookfor=1。 ZigzagBuffer[shift]=lastlow。 res=1。 } } 突破。 案例1://寻找峰值 如果(LowMapBuffer[shift]=0.0 &&LowMapBuffer[shift]<lastlow &&HighMapBuffer[shift]==0.0) { ZigzagBuffer[lastlowpos]=0.0。 Lastlowpos=shift。 lastlow=LowMapBuffer[shift]。 ZigzagBuffer[shift]=lastlow。 res=1。 } 如果(HighMapBuffer[shift]=0.0 &&LowMapBuffer[shift]==0.0) { lasthigh=HighMapBuffer[shift]。 lasthighpos=shift。 ZigzagBuffer[shift]=lasthigh。 whatlookfor=-1。 res=1。 } 突破。 case -1: // 寻找草坪 如果(HighMapBuffer[shift]=0.0 &&HighMapBuffer[shift]>lasthigh &&LowMapBuffer[shift]==0.0) { ZigzagBuffer[lasthighpos]=0.0。 lasthighpos=shift。 lasthigh=HighMapBuffer[shift]。 ZigzagBuffer[shift]=lasthigh。 } 如果(LowMapBuffer[shift]=0.0 &&HighMapBuffer[shift]==0.0) { lastlow=LowMapBuffer[shift]。 Lastlowpos=shift。 ZigzagBuffer[shift]=lastlow。 whatlookfor=1。 } 突破。 默认:返回。 } } return(0); } //+------------------------------------------------------------------+ 最低和最高函数返回什么 Zigzag指标 问吧! 1...767778798081828384858687888990...128 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
如何使EA在一个方向上不是开一个仓位,而是同时开2或3个仓位。例如,我如何在0.5手和0.5手开立两个单向头寸,而不是一个手?或0.3+0.3+0.3手。
>> 我如何设置终端,以便当我把它切换到俄语时,它会用俄语说一切,因为我的语言是用象形文字写的。
在windows区域设置中,将语言设置为俄语,以便在不使用Unicode的应用程序中使用。
你好,我有个问题要直接问Igor Kim,因为他是 i-SignalOfTrade 指标的作者(如果我没弄错的话)。
该指标完美地执行其所有功能,但在发送电子邮件时,日志中出现以下条目
邮件:'i-SignalOfTrade'失败
邮件:451 见http://pobox.com/~djb/docs/smtplf.html。
当然,这个消息并没有传到任何地方。
你能告诉我可能是什么问题以及如何解决吗?
P.S. 邮件客户端配置正确,测试信息的发送和交付没有任何问题。
下午好。你能告诉我谁知道吗?我正在用RTS指数工作。仓位大小由第三方程序计算,并通过txt文件传送给专家顾问。我在这里有两个问题。
1.由于启动块{...}只有在新的tick出现时才被激活,而指数中的tick很少,所以EA的执行会有延迟。
我把它放在了一个更频繁跳动的工具上(欧元兑美元),但我仍然想问--是否可以强制启动{...}?
2.我的经纪人允许的最大头寸大小是20手。我需要建立一个 100手的头寸。现在,我一次只开一个仓位。
但这需要很多时间,每个订单大约需要4秒。(即需要20秒才能开仓),有时这并不是好事。有什么办法能更快地做到这一点吗?(通过预先设定的止损单--对我来说不起作用)。
2.经纪人允许的最大头寸规模是20手。我需要建立一个100手的头寸。现在我正在陆续打开。
但这需要很多时间,每个订单大约需要4秒。(即需要20秒才能开仓),而有时这并不是好事。有什么办法能更快地做到这一点吗?(通过预先设置的止损单--对我不起作用)。
https://forum.mql4.com/ru/13567
阅读。
我没有理解错,在一个tick上,EA会同时向交易系统发送几个买单。
而不是等待服务器对第一个订单的接受和执行作出反应,然后是第二个订单,以此类推? ??
到目前为止,我是这样做的--例子--(日志、真实账户、实时)。
10.55.13 - 下单买入市场20RTS - 这是前20手
10.55.13 - 请求被服务器过滤了
10.55.13 - 请求正在处理中
10.55.17 - 订单被打开
10.55.18 - 订单买入市场20RTS - 这是第二个20手
10.55.18 - 请求被服务器过滤了
10.55.19 - 请求正在处理中
10.55.22 - 订单被打开
10.55.23 - 订单买入市场20RTS - 这是第三次20手
10.55.23 - 请求被服务器过滤了
10.55.24 - 请求正在处理中
10.55.27 - 订单被打开
我想在4秒内打开整个仓位,即在10.55.17之前打开。
2.经纪人允许的最大头寸规模是20手。我需要建立一个100手的头寸。现在我正在陆续打开。
但这需要很多时间,每个订单大约需要4秒。(即需要20秒才能开仓),有时这并不是好事。有什么办法能更快地做到这一点吗?(通过预先设定的止损单--对我来说不起作用)。
运行4个终端,那么4个请求将一次到达经销商处进行处理,而不是一个一个地处理。
伊戈尔,你好!
请告诉我如何在现有的指标中实现声音通知?
例如,在ZigZag。如果你想在画新线的时候有声音,请在组织者那里登记。
//+------------------------------------------------------------------+
//| Zigzag.mq4|
//| Copyright © 2005-2007, MetaQuotes Software Corp.
//|https://www.metaquotes.net//|
//+------------------------------------------------------------------+
#property copyright "Copyright © 2007, MetaQuotes Software Corp."
#属性链接"https://www.metaquotes.net//"
#property indicator_chart_window
#property indicator_buffers 1
#property indicator_color1 Red
//---- 指标参数
外部intDepth=12。
Extern inttern ExtDeviation=5;
Extern inttern ExtBackstep=3;
//---- 指示器缓冲区
双倍ZigzagBuffer[]。
双重HighMapBuffer[]。
Double LowMapBuffer[];
int level=3; // 重新计数的深度。
bool downloadhistory=false。
//+------------------------------------------------------------------+
//|自定义指标初始化功能
//+------------------------------------------------------------------+
int init()
{
IndicatorBuffers(3)。
//---- 绘图设置
SetIndexStyle(0,DRAW_SECTION)。
//---- 指示器缓冲区的映射
SetIndexBuffer(0,ZigzagBuffer)。
SetIndexBuffer(1,HighMapBuffer)。
SetIndexBuffer(2,LowMapBuffer)。
SetIndexEmptyValue(0,0.0)。
//---- 指标短名称
IndicatorShortName("ZigZag("+ExtDepth+", "+ExtDeviation+", "+ExtBackstep+")")。
//---- 初始化完成
return(0);
}
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
int start()
{
int i, counted_bars = IndicatorCounted()。
int limit,counterZ,whatlookfor;
int shift,back,lasthighpos,lastlowpos。
double val,res;
双层Curlow,Curhigh,lasthigh,lastlow。
如果(counted_bars==0 && downloadhistory)//历史记录被下载了
{
ArrayInitialize(ZigzagBuffer,0.0)。
ArrayInitialize(HighMapBuffer,0.0)。
ArrayInitialize(LowMapBuffer,0.0;)
}
如果(counted_bars==0)
{
limit=Bars-ExtDepth。
downloadhistory=true。
}
如果(counted_bars>0)
{
while (counterZ<level && i<100)
{
res=ZigzagBuffer[i];
如果(res!=0)counterZ++。
i++;
}
i--;
limit=i。
如果(LowMapBuffer[i]!=0)
{
curlow=LowMapBuffer[i];
whatlookfor=1。
}
否则
{
curhigh=HighMapBuffer[i];
whatlookfor=-1。
}
for (i=limit-1;i>=0;i--)
{
ZigzagBuffer[i]=0.0。
LowMapBuffer[i]=0.0。
HighMapBuffer[i]=0.0。
}
}
for(shift=limit; shift>=0; shift--)
{
val=Low[iLowest(NULL,0,MODE_LOW,ExtDepth,shift)] 。
如果(val==lastlow)val=0.0。
否则
{
lastlow=val。
如果((Low[shift]-val)>(ExtDeviation*Point)) val=0.0。
否则
{
for(back=1; back<=ExtBackstep; back++)
{
res=LowMapBuffer[shift+back]。
如果((res!=0)&&(res>val))LowMapBuffer[shift+back]=0.0。
}
}
}
如果(Low[shift]==val)LowMapBuffer[shift]=val;否则LowMapBuffer[shift]=0.0。
//----高
val=High[iHighest(NULL,0,MODE_HIGH,ExtDepth,shift)]。
如果(val==lasthigh)val=0.0。
否则
{
lasthigh=val;
如果((val-High[shift])>(ExtDeviation*Point)) val=0.0。
否则
{
for(back=1; back<=ExtBackstep; back++)
{
res=HighMapBuffer[shift+back]。
如果((res!=0)&&(res<val))HighMapBuffer[shift+back]=0.0。
}
}
}
如果(High[shift]==val)HighMapBuffer[shift]=val;否则HighMapBuffer[shift]=0.0。
}
// 最后切割
如果(whatlookfor==0)
{
lastlow=0。
lasthigh=0。
}
否则
{
lastlow=curlow。
lasthigh=curhigh。
}
for (shift=limit;shift>=0;shift--)
{
res=0.0。
switch(whatlookfor)
{
案例0://寻找峰值或草坪
如果(lastlow==0 && lasthigh==0)
{
如果(HighMapBuffer[shift]!=0)
{
lasthigh=high[shift]。
lasthighpos=shift。
whatlookfor=-1。
ZigzagBuffer[shift]=lasthigh。
res=1。
}
如果(LowMapBuffer[shift]=0)
{
lastlow=Low[shift]。
Lastlowpos=shift。
whatlookfor=1。
ZigzagBuffer[shift]=lastlow。
res=1。
}
}
突破。
案例1://寻找峰值
如果(LowMapBuffer[shift]=0.0 &&LowMapBuffer[shift]<lastlow &&HighMapBuffer[shift]==0.0)
{
ZigzagBuffer[lastlowpos]=0.0。
Lastlowpos=shift。
lastlow=LowMapBuffer[shift]。
ZigzagBuffer[shift]=lastlow。
res=1。
}
如果(HighMapBuffer[shift]=0.0 &&LowMapBuffer[shift]==0.0)
{
lasthigh=HighMapBuffer[shift]。
lasthighpos=shift。
ZigzagBuffer[shift]=lasthigh。
whatlookfor=-1。
res=1。
}
突破。
case -1: // 寻找草坪
如果(HighMapBuffer[shift]=0.0 &&HighMapBuffer[shift]>lasthigh &&LowMapBuffer[shift]==0.0)
{
ZigzagBuffer[lasthighpos]=0.0。
lasthighpos=shift。
lasthigh=HighMapBuffer[shift]。
ZigzagBuffer[shift]=lasthigh。
}
如果(LowMapBuffer[shift]=0.0 &&HighMapBuffer[shift]==0.0)
{
lastlow=LowMapBuffer[shift]。
Lastlowpos=shift。
ZigzagBuffer[shift]=lastlow。
whatlookfor=1。
}
突破。
默认:返回。
}
}
return(0);
}
//+------------------------------------------------------------------+