任何菜鸟问题,为了不给论坛添乱。专业人士,不要路过。没有你就无处可去 - 6. - 页 662 1...655656657658659660661662663664665666667668669...1178 新评论 [删除] 2014.07.10 05:25 #6611 那么,有没有人已经有一个RSI iMAOnArray可以使用了? Chiripaha 2014.07.10 07:25 #6612 berezhnuy: 那么,有没有人已经有一个RSI iMAOnArray可以使用了? 我明白为什么没有人给你回应,提供很多 "帮助"...... Vitalie Postolache 2014.07.10 08:06 #6613 berezhnuy: 那么,有没有人已经有一个RSI iMAOnArray可以使用了? 在kodobase里有一个,你只需要查一下就可以了。 Roman Zhitnik 2014.07.10 08:07 #6614 同志们。为了练习,我决定建立最简单的接管展示。但最后有一个问题,如果我改变了图表上的时间框架,并返回到有吸收的时间框架,警报又被触发了。我找到了一个选项,可以让每个柱子只发出一次警报,但当我切换时间段时,一切都会重置。 if (Bars != ThisBarTrade ) { ThisBarTrade = Bars; // ensure only one trade opportunity per bar // Trade logic goes here } 这里是代码本身,没有图形图画,只有逻辑。如何纠正? if(engulfAlerter && Open[2]>Close[2] && Open[1]<Close[1] && Close[1]>Open[2]) { Alert("Bullish Engulf"); } if(engulfAlerter && Open[2]<Close[2] && Open[1]>Close[1] && Close[1]<Open[2]) { Alert("Bearish Engulf"); } P.S. 感应器在去初始化期间重置条件 "ThisBarTrade",同时切换到其他时间框架。 Алексей КоКоКо 2014.07.10 09:48 #6615 你能告诉我如何分开买入和卖出的票吗?ticket=OrderSend("EURUSD",OP_SELL,SellLot,Bid,3,0,0,",MAGICMA,0,Red)。否则{OrderSelect(ticket-3,SELECT_BY_POS,MODE_TRADES)。OrderClose(ticket-3,SellLot,Ask,3,Red)。}特别是Ticket-3,TK交易是一种跨越多个订单的平均价格),但我如何将买入票和卖出票分开? 这样我就可以接受一个3天前开出的订单)。也用于出售 waroder 2014.07.10 10:49 #6616 朋友们好!)我有这样一个问题。我写了一个程序,在启动时打开一个模板(有我需要的指标和图形对象),然后分析数据和交易。当我只是在图表上运行它时,一切都很好。当我在测试器中运行它时,它只有在可视化时才能工作。我明白,模板只能在可视化打开的图表 上加载。所以它在正常的测试模式下不工作,因为它只是在图表上运行而没有加载模板...我有相当多的参数,而用可视化的方式手动运行每个选项是非常不合理的。help plz))你如何解决优化和模板的问题? [删除] 2014.07.10 19:04 #6617 evillive: 分数 )))) 但我没有用MQL写,但从形式上看,这就是问题所在(。又如何能确定呢?由于数值的数量非常有限,我们可以直接用蛮力来检查。#property strict /******************************************************************************/ void fun1(int const A) { Print("fun1()"); if (A == 0 || A == 1) { Print("fun1 do!"); } } /******************************************************************************/ void fun2(int const A) { Print("fun2()"); if (A != 2) { Print("fun2 do!"); } } /******************************************************************************/ void Гарантия_0_1_2(int const A) { switch (A) { case 0: case 1: case 2: fun1(A); fun2(A); break; default: Print("Не соблюдены условия (теоремы)"); } } /******************************************************************************/ void OnStart() { for (int A = 0, limit = 4; A < limit; A++) { Print("Проверяем для A = ", A); Гарантия_0_1_2(A); } }在这里,我们得到了。22:52:38 Script 3 EURUSDm,H1: loaded successfully 22:52:38 3 EURUSDm,H1: initialized 22:52:38 3 EURUSDm,H1: Проверяем для A = 0 22:52:38 3 EURUSDm,H1: fun1() 22:52:38 3 EURUSDm,H1: fun1 do! 22:52:38 3 EURUSDm,H1: fun2() 22:52:38 3 EURUSDm,H1: fun2 do! 22:52:38 3 EURUSDm,H1: Проверяем для A = 1 22:52:38 3 EURUSDm,H1: fun1() 22:52:38 3 EURUSDm,H1: fun1 do! 22:52:38 3 EURUSDm,H1: fun2() 22:52:38 3 EURUSDm,H1: fun2 do! 22:52:38 3 EURUSDm,H1: Проверяем для A = 2 22:52:38 3 EURUSDm,H1: fun1() 22:52:38 3 EURUSDm,H1: fun2() 22:52:38 3 EURUSDm,H1: Проверяем для A = 3 22:52:38 3 EURUSDm,H1: Не соблюдены условия (теоремы) 22:52:38 3 EURUSDm,H1: uninit reason 0 22:52:38 Script 3 EURUSDm,H1: removed事实证明,它们是平等的。如果不是3个,而是,比如说,300万个值,你仍然可以进行机器检查--返回函数的结果并进行比较。如果在整个范围内没有发现差异,那么它们就是相等的。如果用表达式代替变量,例如函数调用,那么等价就变成了 "有保留的等价",因为逻辑表达式 的计算有短路。 forexman77 2014.07.11 09:30 #6618 大家好! 在另一个指标的基础上做了一个指标。 第一个缓冲区的计数是应该的。 第二种情况不是:我想让它在 "line1 > 0 "之后的每个柱子上开始计数。 这基本上就是我在我的专家顾问中所做的事情。if (line1 > 0 && time ==0){time=Time[i+0];}//сработало предварительное условие входа, записываем время if (time > 0)shift=iBarShift(Symbol(),Period(),i+time);//находим индекс бара 而在 "shift >= shet "之后,绘图条件就被触发了。 我改变了变量 "Shet "的外部参数,指标没有变化。 问题可能是什么? 指标代码。#property indicator_buffers 2 #property indicator_color1 Lime #property indicator_color2 Red //--- input parameters extern int Period_MA_r=14; extern int r2 =7; extern int Period_MA_1=46; extern int p2 =19; extern int shet=7; extern int s =0; //--- buffers double ExtMapBuffer1[]; double ExtMapBuffer2[]; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators SetIndexBuffer(0,ExtMapBuffer1); SetIndexStyle(0,DRAW_ARROW); SetIndexArrow(0,119); SetIndexEmptyValue(0,0.0); SetIndexBuffer(1,ExtMapBuffer2); SetIndexStyle(1,DRAW_ARROW); SetIndexArrow(1,119); SetIndexEmptyValue(1,0.0); IndicatorDigits(Digits+1); //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { int counted_bars=IndicatorCounted(), i,limit1,shift; limit1=Bars-counted_bars-1; double line1,signal_line; static datetime time; for(i=limit1;i>=0;i--) { line1=0; signal_line=0; line1=iCustom(NULL,0,"indikator1",Period_MA_r,r2,1,i+0); signal_line=iCustom(NULL,0,"indikator2",Period_MA_1,p2,0,i+0); if (line1 > 0 && time ==0){time=Time[i+0];}//сработало предварительное условие входа, записываем время if (time > 0)shift=iBarShift(Symbol(),Period(),i+time);//находим индекс бара if (line1 == 0){time=0;}//если индикатор равен нолю, то время сбрасывается на ноль if (line1 > 0 && signal_line < s){ExtMapBuffer1[i]=Low[i]-95*Point;} if (line1 > 0 && shift >= shet && signal_line < s){ExtMapBuffer2[i]=High[i]+95*Point;} } return(0); } //+------------------------------------------------------------------+ TarasBY 2014.07.11 12:51 #6619 Forexman77: 大家好! 在另一个指标的基础上做了一个指标。 第一个缓冲区的计数是应该的。 第二种情况不是:我想让它在 "line1 > 0 "之后的每个柱子上开始计数。 这基本上就是我在我的专家顾问中所做的事情。 而在 "shift >= shet "之后,绘图条件就被触发了。 我改变了变量 "Shet "的外部参数,指标没有变化。 问题可能是什么? 指标代码。 关于加0的问题有一些混淆,但可以这样试一试。//+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { int counted_bars=IndicatorCounted(), i,limit1,shift = 0; limit1=Bars-counted_bars-1; double line1,signal_line; static datetime time; for (i=limit1;i>=0;i--) { line1=0.; signal_line=0.; line1 = iCustom (_Symbol, _Period,"indikator1",Period_MA_r,r2,1, i+0); // Не понятно - зачем прибавлять 0 ??? signal_line = iCustom (_Symbol, _Period,"indikator2",Period_MA_1,p2,0,i+0); // Не понятно - зачем прибавлять 0 ??? if (line1 > 0. && time == 0) {time = Time[i+0];} //сработало предварительное условие входа, записываем время [тоже + 0] if (time > 0.) shift= i + iBarShift (_Symbol, _Period, time); //находим индекс бара if (line1 == 0.) {time = 0;} //если индикатор равен нолю, то время сбрасывается на ноль if (line1 > 0.) { if (signal_line < s) { ExtMapBuffer1[i] = Low[i] - 95.*Point; if (shift >= shet) {ExtMapBuffer2[i] = High[i]+95.*Point;} } } } return(0); } //+------------------------------------------------------------------+ Tretyakov Rostyslav 2014.07.11 13:51 #6620 下午好。在终端,如果我双击订单行,就会打开一个修改窗口。但如果一个订单的开盘价 和另一个订单的止盈价在一起,最后修改的订单就会打开。请告知,mql4是否有一个功能,通过点击指标中的必要订单来打开订单修改窗口? 1...655656657658659660661662663664665666667668669...1178 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
那么,有没有人已经有一个RSI iMAOnArray可以使用了?
我明白为什么没有人给你回应,提供很多 "帮助"......
那么,有没有人已经有一个RSI iMAOnArray可以使用了?
在kodobase里有一个,你只需要查一下就可以了。
你能告诉我如何分开买入和卖出的票吗?
ticket=OrderSend("EURUSD",OP_SELL,SellLot,Bid,3,0,0,",MAGICMA,0,Red)。
否则
{
OrderSelect(ticket-3,SELECT_BY_POS,MODE_TRADES)。
OrderClose(ticket-3,SellLot,Ask,3,Red)。
}
特别是Ticket-3,TK交易是一种跨越多个订单的平均价格),但我如何将买入票和卖出票分开? 这样我就可以接受一个3天前开出的订单)。也用于出售
朋友们好!)我有这样一个问题。
我写了一个程序,在启动时打开一个模板(有我需要的指标和图形对象),然后分析数据和交易。当我只是在图表上运行它时,一切都很好。当我在测试器中运行它时,它只有在可视化时才能工作。我明白,模板只能在可视化打开的图表 上加载。所以它在正常的测试模式下不工作,因为它只是在图表上运行而没有加载模板...我有相当多的参数,而用可视化的方式手动运行每个选项是非常不合理的。
help plz))你如何解决优化和模板的问题?
分数 ))))
但我没有用MQL写,但从形式上看,这就是问题所在(。
又如何能确定呢?
由于数值的数量非常有限,我们可以直接用蛮力来检查。
在这里,我们得到了。
事实证明,它们是平等的。如果不是3个,而是,比如说,300万个值,你仍然可以进行机器检查--返回函数的结果并进行比较。如果在整个范围内没有发现差异,那么它们就是相等的。
如果用表达式代替变量,例如函数调用,那么等价就变成了 "有保留的等价",因为逻辑表达式 的计算有短路。
大家好!
在另一个指标的基础上做了一个指标。
第一个缓冲区的计数是应该的。
第二种情况不是:我想让它在 "line1 > 0 "之后的每个柱子上开始计数。
这基本上就是我在我的专家顾问中所做的事情。
而在 "shift >= shet "之后,绘图条件就被触发了。
我改变了变量 "Shet "的外部参数,指标没有变化。
问题可能是什么?
指标代码。
大家好!
在另一个指标的基础上做了一个指标。
第一个缓冲区的计数是应该的。
第二种情况不是:我想让它在 "line1 > 0 "之后的每个柱子上开始计数。
这基本上就是我在我的专家顾问中所做的事情。
而在 "shift >= shet "之后,绘图条件就被触发了。
我改变了变量 "Shet "的外部参数,指标没有变化。
问题可能是什么?
指标代码。
关于加0的问题有一些混淆,但可以这样试一试。
下午好。
在终端,如果我双击订单行,就会打开一个修改窗口。
但如果一个订单的开盘价 和另一个订单的止盈价在一起,最后修改的订单就会打开。
请告知,mql4是否有一个功能,通过点击指标中的必要订单来打开订单修改窗口?