[存档!]任何菜鸟问题,为了不使论坛变得混乱。专业人士,不要路过。没有你,哪里都不能去 - 4. - 页 487 1...480481482483484485486487488489490491492493494...631 新评论 pavelrev 2012.11.03 10:00 #4861 midorum:这很简单。创建一个布尔型变量。在处理订单之前将其设置为false。一旦订单被处理,就把它改为真实。在你检查完所有的订单后,检查该变量的值--如果它仍然是假的,这意味着没有需要魔法的订单。你打开一个新的订单。 谢谢你! Nikolay Grygoryev 2012.11.03 10:25 #4862 Roman.: 试着玩一玩(根据你的需要编辑)Kim的isCloseLastPosByStop - 返回按止损关闭最后位置的标志和NumberOfPositions - 返回位置的数量, 也许其他的会适合你的问题... 谢谢你,伙计,我将继续挖掘:d Viktar Dzemikhau 2012.11.03 12:30 #4863 我决定了解ATR 指标的工作原理, 同时研究其代码。我明白了它的大意,但它写得很奇怪。这里是它的启动 功能。int start() { int i,counted_bars=IndicatorCounted(); //---- if(Bars<=AtrPeriod) return(0); //---- initial zero if(counted_bars<1) for(i=1;i<=AtrPeriod;i++) AtrBuffer[Bars-i]=0.0; //---- i=Bars-counted_bars-1; while(i>=0) { double high=High[i]; double low =Low[i]; if(i==Bars-1) TempBuffer[i]=high-low; else { double prevclose=Close[i+1]; TempBuffer[i]=MathMax(high,prevclose)-MathMin(low,prevclose); } i--; } //---- if(counted_bars>0) counted_bars--; int limit=Bars-counted_bars; for(i=0; i<limit; i++) AtrBuffer[i]=iMAOnArray(TempBuffer,Bars,AtrPeriod,0,MODE_SMA,i); //---- return(0); } //+----------------这里是第一块混乱的地方。//---- initial zero if(counted_bars<1) for(i=1;i<=AtrPeriod;i++) AtrBuffer[Bars-i]=0.0; //----如果counted_bars的值<1,做什么事情有意义呢。在我看来,这意味着指标还没有计算任何条形,我们应该直接退出函数,因为还没有任何数值......。有什么好处呢?为什么AtrBuffer 有索引[Bars-i]?我的理解是,如果没有值,就将缓冲区 设置为 0.0。但是事实证明,数值0.0只被定义在从(Bars) 到(AtrPeriod) 的条形图上,而从AtrPeriod 到第0个条形图 没有任何东西被写入缓冲区。为什么?我不明白这个代码片段的逻辑在下一个街区。//---- i=Bars-counted_bars-1; while(i>=0) { double high=High[i]; double low =Low[i]; if(i==Bars-1) TempBuffer[i]=high-low; else { double prevclose=Close[i+1]; TempBuffer[i]=MathMax(high,prevclose)-MathMin(low,prevclose); } i--; } //----在行。if(i==Bars-1) TempBuffer[i]=high-low;条件如果i==Bars-1。看起来,从左边的图表开始的第1 条的值被考虑了...但这是非常遥远的,这个价值有什么用呢? [删除] 2012.11.03 12:35 #4864 我需要一些帮助!我怎样才能使EA在给定的缩减水平上关闭所有开仓和挂单,例如30%,然后重新启动并重新开始? 附加的文件: mobydickrv2.7.ex4 15 kb [删除] 2012.11.03 12:54 #4865 OrderSend ( string symbol, int cmd, double volume, double price, int slippage, double stoploss, double takeprofit, string comment=NULL, int magic=0, datetime expiration=0, color arrow_color=CLR_NONE)你能不能告诉我,在下单功能中的数据时间到期 参数应该是什么,以便待定订单 在5分钟后如果没有成功就会自行删除?到底是不是TimeCurrent()+300 ? Nikolay Grygoryev 2012.11.03 13:08 #4866 BeerGod:你能不能告诉我,在下单功能中的数据时间到期 参数应该是什么,以便待定订单在5分钟后如果没有成功就会自行删除?到底是不是TimeCurrent()+300 ? 如果我没有弄错的话,它表示的是秒。所以你是对的,5分钟将是300。试着用不含止损和利润的开盘时间 和收盘时间,打印出来,在那里你可以进行比较。 Nikolay Grygoryev 2012.11.03 14:07 #4867 大家好,很想帮忙,下注0.10止损200点,我需要有多少金额才能维持200点? Paladin80 2012.11.03 15:04 #4868 laveosa: 大家好,很想帮忙,下注0.10止损200点,我需要有多少资金才能维持200点? 我不知道,这取决于你使用的是哪种账户,例如,普通账户或美分账户。有时0.01手的1点=1美分(x10x200=20美元),有时0.01手的1点=10美分(x10x200=200美元)。 Nikolay Grygoryev 2012.11.03 16:48 #4869 paladin80: 嗯,这取决于你使用的是哪种账户,比如说普通账户或美分账户。有时0.01手的1点=1美分(x10x200=20美元),有时0.01手的1点=10美分(x10x200=200美元)。 我有1个点--1美分。所以我需要20美元才能止损到200点? Viktar Dzemikhau 2012.11.03 16:53 #4870 我重复一下这个问题,也许因为有后续问题,所以没有人注意到。我决定了解ATR 指标的工作原理, 同时研究其代码。我理解其中的精髓,但它写得很奇怪。这里是它的启动 功能。int start() { int i,counted_bars=IndicatorCounted(); //---- if(Bars<=AtrPeriod) return(0); //---- initial zero if(counted_bars<1) for(i=1;i<=AtrPeriod;i++) AtrBuffer[Bars-i]=0.0; //---- i=Bars-counted_bars-1; while(i>=0) { double high=High[i]; double low =Low[i]; if(i==Bars-1) TempBuffer[i]=high-low; else { double prevclose=Close[i+1]; TempBuffer[i]=MathMax(high,prevclose)-MathMin(low,prevclose); } i--; } //---- if(counted_bars>0) counted_bars--; int limit=Bars-counted_bars; for(i=0; i<limit; i++) AtrBuffer[i]=iMAOnArray(TempBuffer,Bars,AtrPeriod,0,MODE_SMA,i); //---- return(0); } //+----------------这里是第一块有一些混乱的地方。//---- initial zero if(counted_bars<1) for(i=1;i<=AtrPeriod;i++) AtrBuffer[Bars-i]=0.0; //----如果counted_bars的值<1,做什么事情有意义呢。在我看来,这意味着指标还没有计算任何条形,我应该直接退出函数,因为还没有值......有什么好处呢?为什么AtrBuffer 有索引[Bars-i]?我的理解是,如果没有值,就把缓冲区 设置为 0.0。但是事实证明,数值0.0只被定义在从(Bars) 到(AtrPeriod) 的条形图上,而从AtrPeriod 到第0个条形图 没有任何东西被写入缓冲区。为什么?我不明白这个代码片段的逻辑在下一个街区。//---- i=Bars-counted_bars-1; while(i>=0) { double high=High[i]; double low =Low[i]; if(i==Bars-1) TempBuffer[i]=high-low; else { double prevclose=Close[i+1]; TempBuffer[i]=MathMax(high,prevclose)-MathMin(low,prevclose); } i--; } //----在行。if(i==Bars-1) TempBuffer[i]=high-low;条件如果i==Bars-1。看起来,从左边的图表开始 的第1条 的值被 考虑了...但这是非常遥远的,这个价值有什么用呢? 1...480481482483484485486487488489490491492493494...631 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
这很简单。创建一个布尔型变量。在处理订单之前将其设置为false。一旦订单被处理,就把它改为真实。在你检查完所有的订单后,检查该变量的值--如果它仍然是假的,这意味着没有需要魔法的订单。你打开一个新的订单。
试着玩一玩(根据你的需要编辑)Kim的isCloseLastPosByStop - 返回按止损关闭最后位置的标志
和NumberOfPositions - 返回位置的数量, 也许其他的会适合你的问题...
我决定了解ATR 指标的工作原理, 同时研究其代码。我明白了它的大意,但它写得很奇怪。
这里是它的启动 功能。
这里是第一块混乱的地方。
如果counted_bars的值<1,做什么事情有意义呢。在我看来,这意味着指标还没有计算任何条形,我们应该直接退出函数,因为还没有任何数值......。有什么好处呢?
为什么AtrBuffer 有索引[Bars-i]?我的理解是,如果没有值,就将缓冲区 设置为 0.0。但是事实证明,数值0.0只被定义在从(Bars) 到(AtrPeriod) 的条形图上,而从AtrPeriod 到第0个条形图 没有任何东西被写入缓冲区。为什么?
我不明白这个代码片段的逻辑
在下一个街区。
在行。
条件如果i==Bars-1。看起来,从左边的图表开始的第1 条的值被考虑了...但这是非常遥远的,这个价值有什么用呢?
我需要一些帮助!
我怎样才能使EA在给定的缩减水平上关闭所有开仓和挂单,例如30%,然后重新启动并重新开始?你能不能告诉我,在下单功能中的数据时间到期 参数应该是什么,以便待定订单 在5分钟后如果没有成功就会自行删除?到底是不是TimeCurrent()+300 ?
你能不能告诉我,在下单功能中的数据时间到期 参数应该是什么,以便待定订单在5分钟后如果没有成功就会自行删除?到底是不是TimeCurrent()+300 ?
大家好,很想帮忙,下注0.10止损200点,我需要有多少资金才能维持200点?
嗯,这取决于你使用的是哪种账户,比如说普通账户或美分账户。有时0.01手的1点=1美分(x10x200=20美元),有时0.01手的1点=10美分(x10x200=200美元)。
我重复一下这个问题,也许因为有后续问题,所以没有人注意到。
我决定了解ATR 指标的工作原理, 同时研究其代码。我理解其中的精髓,但它写得很奇怪。
这里是它的启动 功能。
这里是第一块有一些混乱的地方。
如果counted_bars的值<1,做什么事情有意义呢。在我看来,这意味着指标还没有计算任何条形,我应该直接退出函数,因为还没有值......有什么好处呢?
为什么AtrBuffer 有索引[Bars-i]?我的理解是,如果没有值,就把缓冲区 设置为 0.0。但是事实证明,数值0.0只被定义在从(Bars) 到(AtrPeriod) 的条形图上,而从AtrPeriod 到第0个条形图 没有任何东西被写入缓冲区。为什么?
我不明白这个代码片段的逻辑
在下一个街区。
在行。
条件如果i==Bars-1。看起来,从左边的图表开始 的第1条 的值被 考虑了...但这是非常遥远的,这个价值有什么用呢?