目录

MT4正版下载 - 每天收盘自动平仓这事我在MT4上折腾到凌晨三点_市场报价窗口与品种管理的隐藏功能

每天收盘自动平仓这事我在MT4上折腾到凌晨三点_市场报价窗口与品种管理的隐藏功能
昨天又是在电脑前坐到后半夜,就为了搞那个每天收盘自动平仓的EA函数,其实这事从我第一次做隔夜单被跳空坑了就开始想了,后来断断续续拖了得有大半年,期间换过好几版思路,也看过论坛里那些写了一大堆但就是不说核心代码的人,最后自己一点点试出来的,今天趁着脑子还热乎赶紧把这过程倒给你们,虽然写得乱但每一步都是真跑过的。

先是搞懂了那个该死的收盘时间判断

MT4自带的那个TimeCurrent()拿到的服务器时间其实跟MT4分析图形修改实操方法全解_联系经纪商客服前需要做的准备工作你电脑右下角那个时间经常对不上,你拿本地时间去对服务器开盘价那不就是瞎搞吗,所以得先搞清楚你说的是哪个收盘,是每天23:59的日线收盘还是每周五那根周线收盘,还是你想做的是那种提前三分钟就开始平仓的提前量,这个不搞明白后面全白搭,(1)因为MT4没有直接告诉你“今天还有几秒收盘”现成函数,你要么用iTime(NULL,PERIOD_D1,0)+PeriodSeconds(PERIOD_D1)-TimeCurrent()这么算,要么用TimeUntil()那个新函数(2)然后还得考虑夏令时冬令时切换,那些经纪商有时候就不跟着当地时区走,你的EA在四月份突然早了一小时平仓你根本不知道怎么回事(3)还有最恶心的就是那种周五收盘跟周一开盘之间跨了好几十个小时,你要是按日线来算周五那根收盘价就没事,但你按小时来算那就完了。

那会儿我是从下午五点一直试到晚上十点多,就那么一行一行把服务器时间打印到评论里看,最后发现我这里那个平台每天收盘就在23:59:58那个位置还带几秒延时,所以你要在EA里做的时候就千万别写那种“等于”的判断,要写成“大于等于”,不然你那单子就永远没法精确卡在那个点上,我就因为写了个等号结果整个EA从没触发过,白白浪费了两天在那看盘。

说到这我又想起,其实最保险的办法不是自己算时间,而是每天只定个窗口期去做,比如21:00到23:50这段时间内通过OnTick()里的定时器去循环检查一次当前bar的开盘时间有没有变成新的一天,变了说明旧bar已经收盘了,这时候你在新bar的第一根K线开盘的头一笔里面把所有仓位都平掉就完事了,这比你去卡那一两秒稳得多。

说说图片尺寸和那点小脾气的事

图片选好以后也不是万事大吉了,我发现用大图的时候软件加载有点慢,尤其那张图两三兆的,每次切个周期它好像都得重新去画一下那个背景,卡顿还挺明显的,后来我把图片压缩了以后就顺溜很多了,还有那个图片的比例问题也是一回事,你电脑屏幕如果是宽屏的,但图片是竖着的那种,它放进去以后要么就显示不全,要么就拉伸变形得特别别扭,(1)有的图片会自动拉伸填满整个图表,但那种变形真的很失真是五五开,(2)有的是保持原始比例显示在中间,两边留白边也挺丑的,(3)还有的就是给裁了一部分,什么最好像素尺寸弄成跟你屏幕分辨率差不多的,用起来顺眼,(4)反正我那张图片试了好几次才满意,来来回回换了好几张图,(5)另外还得注意图片上别有什么文字或者水印的,不然那些地方被K线挡着一块一块的反而影响看盘了,(6)最后就是图片别太鲜艳,时间久了屏幕前晕乎乎的我个人是受不了那种饱和度高的背景的。

说真的,这个设置里面其实还有个透明度滑条来着,我记得好像是把背景图调淡了一点,怎么调,就那个滑条往左边拉就透明了,往右边拉就是实底,我的经验是调到差不多40%左右的透明就差不多了,再低就啥也看不见了那图片基本也就作用了,这功能用上了以后就不想回去了,你懂那感觉吧,就是属于自己的电脑一眼看过去就知道是自己调的,挺有意思的,但话说回来这个图片背景它就是电脑版MT4的专属功能,手机上的MT4我也翻过,没有这个设置,手机下单方便,但这种自定义的事儿还真不如电脑端来得全乎。

我后来还发现一个事儿,就是这个设置保存到配置文件里以后,你再打开其他货币对或者新建图表的时候那个背景图片都会套用过去,这倒也省事了,但我得提醒一句别把图片那个功能玩过头了把钱看岔清了,那可就得不偿失,像我之前说的你选一张图和K线颜色对比度合适的,既能看得清又不能喧宾夺主,毕竟咱们打开MT4是为了看盘中数据涨跌来的,不是为了欣赏自己桌面壁纸来的对吧,不过也有可能是我想多了,反正有的老哥人家就喜欢亮晶晶的背景也照样赚钱。

市场报价窗口与品种管理的隐藏功能

左边的市场报价窗口,很多人就用来看看价格,其实右键菜单里有很多实用功能。比如“显示所有品种”可以把金属、指数、加密货币都显示出来,不用每次去“工具”-“新开图表”里找。
还有“隐藏”功能,可以把不常看的品种收起来,让列表更干净。我通常只留五六个重点关注的品种,看盘时一目了然。

市场报价窗口每个品种旁边有个小箭头,点击一下就能展开这个品种的所有周期图表。这个功能特别适合同时监控多个周期的人,比如我在看欧美H1的同时,想快速瞄一眼M15走势,直接点开箭头就能弹出个小窗口,不用新开图表了。而且这些小窗口可以随意拖动位置,放在主图周围,布局很灵活。

右键菜单里的“交易品种”选项能打开品种列表,里面每个品种都能设置“点差”显示方式,有的平台用浮动点差,有的用固定点差。了解当前点差大小对短线交易很重要,点差太大时入场成本高,不适合做超短线。我每天开盘前都会扫一眼主要品种的点差,点差异常拉大时说明市场流动性差,这时候就少做单。

报价窗口还支持自定义排序,点击列标题就能按“买价”、“卖价”、“点差”等字段排序。比如我想找出当前点差最小的品种,点击“点差”列标题,系统就会自动排序,很方便。这个功能在震荡行情中特别实用,能帮你在众多品种中快速找到交易成本最低的那个。

写个简单的指标来显示价差怎么样

如果你对MT4的MQL4编程有点了解,其实可以自己写一个简单的脚本或指标,在图表上直接显示每个订单的价差。这听起来有点复杂,但实现起来并不难。核心思路就是读取每个订单的开仓价,然后和当前市场价做减法,把差值显示在图表角落或者每个订单旁边。

网上其实有很多现成的源码可以下载,搜索“MT4 order spread indicator”就能找到不少。下载后放到MT4的“MQL4/Indicators”文件夹里,然后重启MT4,在导航器里拖拽到图表上就能用。这类指标通常会列出所有订单的详细信息,包括开仓价、现价、价差点数以及盈亏百分比。

我自己的经验是,这类指标虽然方便,但有些写得不好的可能会占用较多CPU资源,尤其是在图表上同时显示多个订单时。建议选择那些开源且更新频繁的版本,用之前先看看用户评论。另外,指标显示的数字虽然直观,但本质上还是基于市场报价的实时计算,所以网络延迟大时可能会有轻微误差。

如果你不想用第三方指标,其实还有个笨办法:把订单列表复制粘贴到Excel里,然后用公式自动计算价差。虽然不能实时更新,但至少能帮你理清思路,尤其是在做交易复盘的时候。复制数据后,在Excel里用“当前价-开仓价”就能算出每单的浮动盈亏点数,再乘以合约规模就是具体金额了。

说实话,每种方法都有它的适用场景。如果你是短线交易者,盯盘频繁,那图表上画水平线可能最顺手;如果你是中长线持仓,订单窗口的详细信息就够用了;而如果你是个技术控,喜欢自定义工具,那自己写指标或者用现成的第三方工具会是你的菜。找到适合自己的方式,交易效率能提升不少。希望上面这些个人经验能对你有帮助,也欢迎有更好办法的朋友在评论区分享交流。

文章目录