论坛全局菜单下方 - TICKMILL 285X70论坛全局菜单下方 - ThinkMarkets285X70论坛全局菜单下方 - 荔枝返现285X70论坛全局菜单下方 -  icmarkets285X70
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
前往
共 131 条
查看:9273回复:130
偶然帅
注册时间2007-02-19
[原创]说说我最近编的那些EA:交易逻辑、研发过程、启发
楼主发表于:2017-08-03 08:43只看该作者倒序浏览
1楼 电梯直达
电梯直达
身为一个翠山级的程序员+交易员,我几乎每周都要编一两个EA! 为了给韬客增加干货,我打算陆续把平常编写EA的过程写下来,让大家对程序员的工作都更多了解 ---------------------------------------------------------------------------------- 最近写的EA是一个风控EA。缘起于本论坛的Wozbang网友的请求。(见附图) 接到这个任务以后,我需要做的是列出需求: 1. 显示帐户余额、帐户净值 2. 显示已用保证金、可用保证金(这两项加在一起等于帐户净值) 3. 显示平台提供的最大杠杆、显示目前使用的杠杆 4. 如果哪个订单没有止损,自动给这个订单设置止损(默认值是100点) 5. 根据全部订单的止损 计算总风险,并显示总风险 6. 显示风险比例 (总风险/帐户净值)(如果风险比例超过预设置30%,则以红色字体显示风险比例,并播放警报声) 7. 显示今天已经下的订单的个数;显示今天已经下的订单的 总的手数(手数计算可能有些困难,比方说在我使用的某平台上,WTI的1手实际相当于EURUSD的0.1手) 8. 检查最后一个订单和倒数第二个订单的时间间隔(必须是同一货币对),如果订单间隔太小,则以红色字体显示警告信息,并播放警报声 9. 检查最后一个订单的手数,并根据这个订单的货币对 检查过去5个订单的手数的平均值,如果最新这个订单的手数 超过了平均值的1.5倍,则以红色字体显示警告信息,并播放警报声 10. 检查历史上发生的较大的连续亏损,如果亏损超过预设值(30%),则以红色字体显示警告信息(但不播放警报声) 技术实现: 1. 显示使用 label,这种对象的好处是,可以把它固定在屏幕上的某个位置,K线的不停推进 不会影响 label的位置 2. 其次,相对于comment函数显示的文字,label的字体、字号和颜色都可以自定义。 3. 整个程序可以做成 指标的形式。 但考虑到 有可能需要更改场内订单的止损,故 这里 采用EA的形式。 (未完待续) Capture.GIFCapture.GIF
TK29帖子1楼右侧xm竖版广告90-240

评分

参与人数5
积分
金币
人气
时间
理由
0
0
0
2017-08-03
赞一个!
0
0
0
2017-08-03
很给力!
0
0
0
2017-08-03
赞一个!
0
0
0
2017-09-02
这不叫EA,属工具类,没什么意思,要干就干.
0
0
0
2017-08-07
摩擦摩擦,是魔鬼的步伐!
个性签名

韬客社区www.talkfx.co

广告
TK30+TK31帖子一樓廣告
TK30+TK31帖子一樓廣告
HOME龙尔
注册时间2016-06-29
积极参与奖友爱维和奖热心助人奖白羊座金牛座双子座巨蟹座狮子座处女座天秤座天蝎座射手座摩羯座水瓶座双鱼座
发表于:2017-08-03 08:55只看该作者
2楼
emoji-image 虽然看不懂 默认回帖支持
MMYPL
注册时间2017-03-03
发表于:2017-08-03 09:05只看该作者
3楼
看不懂,,多点讲下EA的知识了,楼 主
zrahzz
注册时间2013-02-06
发表于:2017-08-03 09:59只看该作者
4楼
涛客福利啊.坛友们尽情报需求吧.
无金不伤
注册时间2016-03-30
白羊座
发表于:2017-08-03 09:59只看该作者
5楼
多谢楼主分享,希望以后有机会能够和楼主合作。
个性签名

佛有三事最为无上:一者发菩提心;二者护持正法;三者如闻修行。

广告
论坛谏言--外汇交易不应是你投资的全部,交易外汇也不应是你生活的全部
壁虎超人
注册时间2016-02-24
发表于:2017-08-03 10:38只看该作者
6楼
前辈有空帮忙写一个指标吗?很简单的内容类似金叉死叉就弹出信号,如果可以,感激不尽。
白水示申
注册时间2014-09-02
金牛座
发表于:2017-08-03 12:31只看该作者
7楼
历史订单统计风险报表函数模块、持仓跟踪报表函数模块、窗口画表文字函数模块,这些不过是交易之外的基础。真正涉及交易的是交易信号函数模块和与交易系统联动的自动加减仓函数模块。 简化代码和高效率实现这些数据功能至少要用到多维数组和C++中的类。
常量
注册时间2009-06-16
czmczmczm
注册时间2017-01-11
发表于:2017-08-03 13:27来自移动端只看该作者
9楼
很强!
三交五易
注册时间2014-04-22
发表于:2017-08-03 13:32只看该作者
10楼
说出来可能就失效了,除非是无用的东东
偶然帅
注册时间2007-02-19
楼主发表于:2017-08-04 02:03只看该作者
11楼
wozbang提出来增加两个功能: 1. 加仓点位最少间隔25点。 2. 1000美金最多1手,500美金最多0.5,200最多0.2 在这里,我想说一下程序员跟需求方的沟通问题。有些需求方 在描述需求时,说话或于简略或含糊,这会让程序员很迷茫的! 大家可能已经知道,汉语是一种非常不精确 不准确的语言。 如果我们在表达自己的时候 还想着省几个字,省点工夫,那么后果必然是沟通不畅 比如这里,wozbang提出的两个需求。第二点他描述得比较清楚,还有举例说明。 第一点不够清楚,有岐义。加仓点位的间隔,我在做其它EA的时候,曾经做过这个功能。 但是呢它有两个方向,以同一货币对 多单为例:(一)新订单(多单)的预计成交价格 比 前一个多单的成交价格要高至少25点。 (二)新订单(多单)的预计成交价格 比 前一个多单的成交价格要低至少25点。 这里,我姑且认为 wozbang的本意是第一种,即,在浮盈的情况下加仓。 浮亏加仓也不能说 完全不科学,但是作为一个风控程序,我们要尽量抑制一切无端扩大风险的行为。
个性签名

韬客社区www.talkfx.co

广告
论坛谏言--外汇交易不应是你投资的全部,交易外汇也不应是你生活的全部
偶然帅
注册时间2007-02-19
楼主发表于:2017-08-04 02:14只看该作者
12楼
壁虎超人 发表于 2017-8-3 18:38
前辈有空帮忙写一个指标吗?很简单的内容类似金叉死叉就弹出信号,如果可以,感激不尽。
可以,你就在这里说需求吧。 ------------------------ 另外内容的分割线 --------------------------------------------------- 另外,有些朋友可能误会了,让大家“尽情地报需求”。这样还怎么得了,想把我累死吗 emoji-image 你可知道,有些类型的程序,就算付我钱 我都不愿意写的,比方说什么网格,什么马丁格尔。。。 什么各种眼花缭乱的调整仓位,后单和前单各种关联,等等。 我最赞成的EA是这样的:(一)固定手数,明确的进场逻辑,明确的出场逻辑。每一单都各自运行,互相之间没有逻辑关系。如果你的进出场逻辑有优势,那你就能赚钱。外汇的竞技场上,大家比的就是这个。(二)最好是指定的货币对和周期。 现在这时代没必要做那种万能型EA了。你想适应所有的品种 所有的周期,就好象 你想讨好各种类型的妹子一样,结果必然是出力不讨好 (三)所谓AI,自学习EA,只不过是把优化的过程也做到了程序内部而已。 咱们现在做的一般的EA,在投入使用前都会做充分的历史测试,也做适当的优化,这本身就是一个“学习”过程。 在EA投入使用后,也会定期用最近的数据做测试和评估,并根据需要调整参数和逻辑。 这整个过程加在一起就是AI。 我个人认为没有必要做一体化的自学习EA。又不是天天都需要重新学习
壁虎超人
注册时间2016-02-24
发表于:2017-08-04 03:36只看该作者
13楼
偶然帅 发表于 2017-8-4 10:14
可以,你就在这里说需求吧。 ------------------------ 另外内容的分割线 -------------------------- ...
再次在此谢过。 另外我说这个不是EA,就指标+窗口提示而已。 stochastic oscillator指标,数值50以上出现死叉,窗口提示卖出信号;数值50以下出现金叉,窗口提示买入信号。周期是1H和4H两个,考虑到有指标钝化的现象,1H的信号提示限制在每天出现一次,4H的信号提示也是每天出现一次。
个性签名

韬客社区www.talkfx.co

广告
论坛谏言--外汇交易不应是你投资的全部,交易外汇也不应是你生活的全部
巴蒂斯图塔
注册时间2013-11-12
发表于:2017-08-06 06:36只看该作者
14楼
能帮忙写个海龟法则的EA吗?

点评

海龟法则都失效了,你还要这个EA有毛用啊。 而且海龟法则的盈利其实就是追顶和追底,现在这种墨迹的行情,什么法则都没用。发表于 2017-08-07 02:39
个性签名

韬客社区www.talkfx.co

偶然帅
注册时间2007-02-19
楼主发表于:2017-08-06 14:11只看该作者
15楼
巴蒂斯图塔 发表于 2017-8-6 14:36
能帮忙写个海龟法则的EA吗?
海龟的EA,我很早以前就写过 并且删掉了。 海龟已经失效了。 如果海龟没有失效,就算你没有EA,也不难手工操作,因为它很久才出现一个信号。(4H图或者日图)
个性签名

韬客社区www.talkfx.co

广告
论坛谏言--外汇交易不应是你投资的全部,交易外汇也不应是你生活的全部
以梦为马
注册时间2015-01-23
以梦为马
注册时间2015-01-23
发表于:2017-08-07 01:32来自移动端只看该作者
17楼
ea赚吗
偶然帅
注册时间2007-02-19
楼主发表于:2017-08-07 02:04只看该作者
18楼
有的赚有的不赚。普通用户需要会鉴别。
偶然帅
注册时间2007-02-19
楼主发表于:2017-08-07 02:17只看该作者
19楼
本帖最后由 偶然帅 于 2017-8-7 11:09 编辑 [更新] wozbang提出来增加几个功能: 1. 加仓点位最少间隔25点,前一单有浮赢才加仓 2. 1000美金最多1手,500美金最多0.5,200最多0.2 3. 可以自己设置单笔最大亏损,最好以账户百分比来计算 4. 要设置账户最大亏损,比如超过18%就不能再交易,这个18%也是变量。【帐户最大亏损 功能已经做了,即“总风险上限”】【据我所知,我们没办法禁止帐户交易,MT4没有这个功能】 [更新] 现在基本理顺了所有功能。显示出来的效果如附图。 补充内容 (2017-8-7 12:28): 2017.8.7 12:30PM 刚刚写完了风控程序的使用说明书。打算再加个平仓按钮就正式发布~ 补充内容 (2017-8-7 17:27): 增加了平仓按钮。当出现异常情况时 就会显示平仓按钮,以方便快速平仓。需要此软件的朋友请 查看我另外发的贴子去下载Capture.GIFCapture.GIF
张翠山
注册时间2015-04-23
积极参与奖韬客美食家
发表于:2017-08-07 02:25只看该作者
20楼
“要设置账户最大亏损,比如超过18%就不能再交易” 这种需求最不理解,这一类的,直接让他入准备入的18%不就完了么,还能防黑天鹅。 在我看来所有账户最大亏损都是100%, 进了账户的钱就要承担风险,不承担风险为啥要进,直接放钱包里多好。安全感满满。
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
前往
共 131 条

本站免责声明:

1、本站所有广告及宣传信息均与韬客无关,如需投资请依法自行决定是否投资、斟酌资金安全及交易亏损风险;

2、韬客是独立的、仅为投资者提供交流的平台,网友发布信息不代表韬客的观点与意思表示,所有因网友发布的信息而造成的任何法律后果、风险与责任,均与韬客无关;

3、金融交易存在极高法律风险,未必适合所有投资者,请不要轻信任何高额投资收益的诱导而贸然投资;投资保证金交易导致的损失可能超过您投入的资金和预期。请您考虑自身的投资经验及风险承担能力,进行合法、理性投资;

4、所有投资者的交易帐户应仅限本人使用,不应交由第三方操作,对于任何接受第三方喊单、操盘、理财等操作的投资和交易,由此导致的任何风险、亏损及责任由投资者个人自行承担;

5、韬客不隶属于任何券商平台,亦不受任何第三方控制,韬客不邀约客户投资任何保证金交易,不接触亦不涉及投资者的任何资金及账户信息,不代理任何交易操盘行为,不向客户推荐任何券商平台,亦不存在其他任何推荐行为。投资者应自行选择券商平台,券商平台的任何行为均与韬客无关。投资者注册及使用韬客即表示其接受和认可上述声明,并自行承担法律风险。

版权所有:韬客外汇论坛 www.talkfx.com 联络我们:[email protected]