文章 "MQL5 Cookbook: 多币种EA交易 - 简洁而快速的途径" - 页 3 123 新评论 Nauris Zukas 2015.07.30 19:52 #21 //+------------------------------------------------------------------+ //|| 计算追踪止损位 //+------------------------------------------------------------------+ double CalculateTrailingStop(int symbol_number,ENUM_POSITION_TYPE position_type) { //--- 用于计算的变量 double level =0.0; double buy_point =low[symbol_number].value[1]; // 购买价值低 double sell_point =high[symbol_number].value[1]; // 卖出值高这样做是不正确的。如果仓位和柱状价格开盘时出现缺口,止损将无法正确设置。 earmarques 2016.10.06 04:51 #22 Jose:文章简洁易懂,并提供了 .set 文件中的设置。我在符号执行模式 方面遇到了一个问题,特别是检查是即时还是市场的条件,只有在检查后才允许打开订单,我不得不将其删除,但一切正常。 我有一个问题。我看到过很多不同的高级方法,比如这个方法,它们从一开始就忽略了所提供的 Expert、ExpertSignal、ExpertTrade.... 结构,尽管它们花了很多代码(我想也花了很多时间)复制其中的一些功能。有谁能向我解释一下吗?大家好!我正试着测试这个 EA,但在 Strategy Tester 中得到了以下信息:"开仓出错:4753 - 1 未找到头寸"。我不明白这是为什么。当执行文件 "TradeFunctions.mqh "第 159 行中的 "trade.PositionOpen "函数时,就会出现这种情况。谁能帮帮我? Tango_X 2018.10.27 14:04 #23 您能告诉我作者描述的位置反转 发生在哪里吗?以下是他的代码和描述//--- 如果有一个位置 else { //--- 获取位置类型 GetPositionProperties(symbol_number,P_TYPE); //--- 如果位置与信号相反且位置反转已启用 if(pos.type==opposite_position_type && Reverse[symbol_number]) { //--- 获取位置音量 GetPositionProperties(symbol_number,P_VOLUME); //--- 调整音量 lot=pos.volume+CalculateLot(symbol_number,Lot[symbol_number]); //--- 让我们颠倒一下位置 OpenPosition(symbol_number,lot,order_type,position_open_price,sl,tp,comment); return; }查看OpenPosition(OpenPosition_symbol_number,lot,order_type,position_open_price,sl,tp,comment) 函数;//+------------------------------------------------------------------+ //|| 打开一个位置| //+------------------------------------------------------------------+ void OpenPosition(int symbol_number, double lot, ENUM_ORDER_TYPE order_type, double price, double sl, double tp, string comment) { //--- 设置贸易结构中的主编号 trade.SetExpertMagicNumber(MagicNumber); //--- 以点为单位设置滑移大小 trade.SetDeviationInPoints(CorrectValueBySymbolDigits(Deviation)); //--- 即时执行和市场执行模式 // *** 从第 803 版开始,止损和获利水平 *** // *** 可在 SYMBOL_TRADE_EXECUTION_MARKET 模式下开仓时设置 *** if(symb.execution_mode==SYMBOL_TRADE_EXECUTION_INSTANT || symb.execution_mode==SYMBOL_TRADE_EXECUTION_MARKET) { //--- 如果位置未打开,则打印相关信息 if(!trade.PositionOpen(Symbols[symbol_number],order_type,lot,price,sl,tp,comment)) Print("开仓时出错:",GetLastError()," - ",ErrorDescription(GetLastError())); } } 这只是一个锁定!没有反转......手数递增也是如此!您能解释一下吗,也许我错了? Vladimir Karputov 2018.10.27 14:10 #24 Tango_X:您能告诉我作者描述的位置反转 发生在哪里吗?以下是他的代码和描述查看OpenPosition(OpenPosition_symbol_number,lot,order_type,position_open_price,sl,tp,comment) 函数; 这只是一个锁定!没有反转......手数递增也是如此!您能解释一下吗,也许我说错了?有两种类型的交易账户:净额结算和对冲。 有行动这是净额交易。对冲账户有买入 1.0卖出 2.0卖出 1.0买入 1.0 并卖出 2.0 Tango_X 2018.10.27 14:13 #25 Vladimir Karputov:交易账户有两种类型:净额结算和套期保值。有行动成为净额结算成为对冲账户买入 1.0卖出 2.0卖出 1.0买入 1.0 并卖出 2.0买入谢谢 Jose Ma Gassin Perez Traverso 2024.01.25 15:35 #26 "TimeframeToString "不存在,文章中也没有声明,请用 "EnumToString "代替。 123 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
这样做是不正确的。如果仓位和柱状价格开盘时出现缺口,止损将无法正确设置。
文章简洁易懂,并提供了 .set 文件中的设置。我在符号执行模式 方面遇到了一个问题,特别是检查是即时还是市场的条件,只有在检查后才允许打开订单,我不得不将其删除,但一切正常。
我有一个问题。我看到过很多不同的高级方法,比如这个方法,它们从一开始就忽略了所提供的 Expert、ExpertSignal、ExpertTrade.... 结构,尽管它们花了很多代码(我想也花了很多时间)复制其中的一些功能。有谁能向我解释一下吗?
大家好!
我正试着测试这个 EA,但在 Strategy Tester 中得到了以下信息:"开仓出错:4753 - 1 未找到头寸"。我不明白这是为什么。当执行文件 "TradeFunctions.mqh "第 159 行中的 "trade.PositionOpen "函数时,就会出现这种情况。谁能帮帮我?
您能告诉我作者描述的位置反转 发生在哪里吗?以下是他的代码和描述
查看OpenPosition(OpenPosition_symbol_number,lot,order_type,position_open_price,sl,tp,comment) 函数;
这只是一个锁定!没有反转......手数递增也是如此!您能解释一下吗,也许我错了?您能告诉我作者描述的位置反转 发生在哪里吗?以下是他的代码和描述
查看OpenPosition(OpenPosition_symbol_number,lot,order_type,position_open_price,sl,tp,comment) 函数;
这只是一个锁定!没有反转......手数递增也是如此!您能解释一下吗,也许我说错了?有两种类型的交易账户:净额结算和对冲。
交易账户有两种类型:净额结算和套期保值。
买入谢谢