程序端
- 添加批量平仓和取消挂单的命令。
新“批量操作”命令已添加到交易选项卡的快捷菜单。可用命令列表会根据所选操作和您的账户类型自动形成。
菜单中始终提供以下命令:
- 关闭锁仓账户中的所有持仓,系统尝试反向平仓(Close By),然后按照常规程序关闭剩余持仓。
- 关闭所有盈利持仓或亏损持仓
- 删除所有挂单
- 删除特定类型的挂单:limit(限价单)、stop(停损单)和stop limit(停损限价)
如果您选择一个持仓,菜单中会出现其他命令:
- 关闭交易品种的所有持仓
- 关闭同方向的所有持仓(锁仓账户)
- 关闭相同交易品种的反向持仓(锁仓账户)
- 持仓逆转(单边账户)
如果您选择挂单,菜单中会出现其他命令:
- 删除同一交易品种的所有挂单
- 删除相同交易品种的所有相同类型的挂单
这些命令仅在平台设置中启用一键交易时可用:工具\选项\交易。
- 增强内部聊天功能:
- 添加回复消息的功能。回复中将引用源消息文本。
- 添加创建不同内容类型的消息的功能,例如带有文本的图像和带有附件的文本等。
- 修正显示已读和未读消息之间的分隔符。
- 错误修复和稳定性改进。
- 添加回复消息的功能。回复中将引用源消息文本。
- 优化和加快程序端图形系统的运行速度。界面渲染需要的资源将会更少。
- 修正期货每日价格变化的计算。如果交易商提供清算价格,该价格将被用于计算。 ((Last - Clearing Price)/Clearing Price)*100文档中提供了所有计算类型的详细说明。
- 修正购买MQL5服务时出现的错误:
- 在某些条件下,支付系统可能为成功操作返回错误。
- 市场中的中间产品租用环节可能会显示不正确的价格。
- 修正购买/下载市场产品页面上的“开始”按键的操作。现在,该按键在第一个打开的图表上正确启动应用程序。
- 修正生成持仓历史时,对某些交易类型的考虑。
MQL5
- 添加处理矩阵和向量的新函数:
- Median — 返回矩阵或向量元素的中位数
- Quantile — 返回矩阵/向量元素或沿指定轴的元素的第q个分位数
- Percentile — 返回矩阵/向量元素或沿指定轴的元素的第q个百分位数
- Std — 计算矩阵或向量元素的标准差
- Var — 计算矩阵或向量元素的方差
- CorrCoef — 计算矩阵/向量相关系数
- Correlate — 计算两个向量的交叉相关
- Convolve — 返回两个向量的离散,线性卷积
- Cov — 计算协方差矩阵
- 我们已经开始为数值数组添加内置方法。新方法增强了可用性,提高代码紧凑性,并加强代码与其他语言的兼容性。
以下三种方法已经可用:
- ArgSort — 按指定维度对数组进行排序;默认使用最后一个 (axis=-1)。
- Range — 返回指定数组维度中的元素数。类似于ArrayRange。
- Size — 返回数组元素的数量。类似于ArraySize。
例如:
void OnStart() { int arr[4][5]= { {22, 34, 11, 20, 1}, {10, 36, 2, 12, 5}, {33, 37, 25, 13, 4}, {14, 9, 26, 21, 59} }; ulong indexes[4][5]; //--- 排序数组 arr.ArgSort(indexes,-1,0); Print("indexes"); ArrayPrint(indexes); } // 结果日志: // 索引 // [,0][,1][,2][,3][,4] // [0,] 4 2 3 0 1 // [1,] 2 4 0 3 1 // [2,] 4 3 2 0 1 // [3,] 1 0 3 2 4
- ArgSort — 按指定维度对数组进行排序;默认使用最后一个 (axis=-1)。
- 我们已开始为字符串添加内置方法。
目前可以使用以下方法:
- BufferSize — 返回为字符串分配的缓冲区大小。
- Compare — 比较两个字符串并将比较结果返回为整数。
- Length — 返回字符串中的字符数。
- Find — 搜索字符串中的子字符串。
- Upper — 将字符串大写。
- Lower — 将字符串转换为小写。
- Replace — 替换一个子字符串。
- Reserve — 为字符串保留缓冲区。
例如:
void OnStart() { string test="some string"; PrintFormat("String length is %d",test.Length()); } // 结果日志: // 字符串长度是11
- BufferSize — 返回为字符串分配的缓冲区大小。
- 将SYMBOL_SUBSCRIPTION_DELAY值添加到ENUM_SYMBOL_INFO_INTEGER枚举中,以延迟特定交易品种的报价交付。
它仅用于基于订阅的交易品种。延迟通常适用于试用模式提供的数据。
只能为在市场报价中选择的交易品种请求该属性。否则,将返回ERR_MARKET_NOT_SELECTED (4302)错误。
- 将ACCOUNT_HEDGE_ALLOWED属性添加到ENUM_ACCOUNT_INFO_INTEGER枚举中 — 启用反向持仓和挂单。该属性仅用于锁仓账户,以符合特定监管要求,根据该监管要求,同一交易品种的账户不能有反向持仓,但允许同向持仓。
如果禁用此选项,则账户将不允许持有同一交易品种的反向持仓和订单。例如,如果该账户是Buy持仓,那么用户就不能建立Sell持仓或下单卖出挂单。如果用户尝试执行此类操作,则会返回TRADE_RETCODE_HEDGE_PROHIBITED错误。
- ENUM_SYMBOL_INFO_DOUBLE枚举中的新属性:
- SYMBOL_SWAP_SUNDAY
- SYMBOL_SWAP_MONDAY
- SYMBOL_SWAP_TUESDAY
- SYMBOL_SWAP_WEDNESDAY
- SYMBOL_SWAP_THURSDAY
- SYMBOL_SWAP_FRIDAY
- SYMBOL_SWAP_SATURDAY
使用这些值来获取一周中特定日期的库存费计算率。1 — 单库存费,3 — 三倍库存费,0 — 无库存费。 - 修正CopyTicks和CopyTicksRange 函数操作。过夜时,该错误可能导致返回过时的数据。当没有为交易品种提供报价时会发生错误。
- 修复崩溃日志中报告的错误。