23 123
发新话题
打印

一个EA(高效有趣自动交易系统)的问答(附源码)

本主题由 大维 于 2008-8-11 23:09 移动

一个EA(高效有趣自动交易系统)的问答(附源码)

在“一个高效有趣的操作系统”相关方案之一(附源码)里
超短线老兄提了一些问题
为了方便讨论
把问答移到这里
下面先把已有的帖子先贴一下




超短线问
这个曲线太疯狂了。/ g% X# }' ?+ V6 \4 I/ ?, O" R
楼主能具体解释一下:# Y; o; n! d: ]! E& r- O6 d
——————————————
仅用过去两个不同时段的开盘价比大小来决定买卖当然时间的选取是有讲究的
就是要等一日的趋势出来才做6 {1 w+ @$ v/ d* e$ n
————————————————————————# l$ i2 z& j( I" @/ y1 J6 S$ ?
1、那两个不同时段的开盘价比大小?
2、如何认为一日的趋势才算出来?; R1 I! D& V7 x% J

多谢楼主,这个简的系统我真的是好喜欢。


iii答
它里面有判断
。。。

if (((Open[t1]-Open[t2])>delta_S*Point)
。。。
也就是用t1时间的开盘价和t2时间的开盘价进行比较
看看是否大于一个门槛delta_S*Point
来决定这一天是否买卖和方向

超短线问
多谢,不过我看不明白代码。
楼主能不能具体说明一下。
T1、T2分别是北京时间几点?4 U1 U( a( ~1 P+ {1 @! s4 y
T1、T2关系如何决定当天的方向?

iii答
这是别人搞得程序
我试着分析回答
T1、T2分别是北京时间几点?

这和测试时的行情数据用的是哪家的服务器有关
又和这个服务器和北京时间的时差有关

一般在程序中要有一句
timezone=xx; 来指定服务器的时区
它没有这句
不过可以推断出来
因为这个程序是从1999年开始测试
测试了十年数据
这么长的历史数据只有MT4软件公司(MetaQuotes Software Corp. )自己才有
MetaQuotes Software Corp. 的时区在GMT+2
而北京时区在GMT+8时差晚6小时

在程序中有这么三句话
int TradeTime=18;      // Time to enter the market
int t1=6;              
int t2=2;  

交易开仓时间在18点
18+6=24也就是北京时间零点
根据判断条件若符合就开仓
至于T1=6也就是“开仓时间在18点”之前六小时
也就是北京时间18点
至于T1=2也就是“开仓时间在18点”之前两小时
也就是北京时间22点


北京时间18点是伦敦开市后四小时
北京时间22点是纽约开始后一小时
从这两点价格的变化及点差来决定是开买仓还是卖仓
还是今天放弃开仓

int delta_L=6;         
int delta_S=21;
是门槛值

这是和国内常常用指标来判定趋势的不同的思路

下面是源代码


[ 本帖最后由 iii 于 2008-7-24 03:31 编辑 ]
附件: 您所在的用户组无法下载或查看附件
本帖最近评分记录
  • fx23 威望 +10 原创内容 2008-7-22 20:04
  • fx23 金钱 +10 原创内容 2008-7-22 20:04

TOP

iii兄,我看了这个ea的记录,如果没到它预定的赢利点数,就一直挺着,这个估计也只有ea能做到,人工操作估计难啊。这样的话,如果正好在数据,或者突发事件之前开仓,要求资金足够多,能挺过这一次波动,真的做起来,恐怕没几个人能做到啊。

TOP

你看这个曲线,明显的就是没有止损的EA

理念决定行为 规则看守财富 行动产生利润 犹豫葬送机遇

TOP

lz真够热心的
支持一下先

(系统—分析—确认)+资金管理+纪律=稳定盈利

TOP

引用:
原帖由 晨曦 于 2008-7-22 19:33 发表
你看这个曲线,明显的就是没有止损的EA
看程序是有止损的

int TakeProfit_L = 39; // Take Profit in pointsml买仓止盈点数
int StopLoss_L = 147;  // Stop Loss in points买仓止损点数
int TakeProfit_S = 32; // Take Profit in points卖仓止盈点数
int StopLoss_S = 267;  // Stop Loss in points卖仓止损点数

[ 本帖最后由 iii 于 2008-7-22 20:37 编辑 ]

TOP

引用:
原帖由 iii 于 2008-7-22 20:04 发表


看程序是有止损的

int TakeProfit_L = 39; // Take Profit in pointsml买仓止盈点数
int StopLoss_L = 147;  // Stop Loss in points买仓止损点数
int TakeProfit_S = 32; // Take Profit in points卖仓止盈点数
...
一个是147,另外一个就267
这个数目算是止损吗?
资金不够大的以人为操作可行吗?
赚钱的就39,32,相差好远哪!
胜败乃是兵家常事
输赢化作家常便饭

TOP

引用:
原帖由 loh2005 于 2008-7-22 20:43 发表

一个是147,另外一个就267
这个数目算是止损吗?
资金不够大的以人为操作可行吗?
赚钱的就39,32,相差好远哪!
不提还不知道
若非对系统非常自信
很难执行下去的
这样的盈亏比例
只怕不用系统也能做出成绩
关键是稳定问题

(系统—分析—确认)+资金管理+纪律=稳定盈利

TOP

引用:
原帖由 loh2005 于 2008-7-22 20:43 发表

一个是147,另外一个就267
这个数目算是止损吗?
资金不够大的以人为操作可行吗?
赚钱的就39,32,相差好远哪!
世上有各种各样的思路和异数
在这里发表一下
也是冲击
可以跳出固有的定势思维
也许在自己的面前会出现新的蓝天
本帖最近评分记录
  • 短线客 威望 +10 我很赞同 2008-7-23 11:19
  • 短线客 金钱 +10 我很赞同 2008-7-23 11:19

TOP

作为机械交易来说,不能用我们固有的思想去限制它,而应该是看实际中,如果我的资金只有10000的情况下,它的运行效果如何

TOP

引用:
原帖由 iii 于 2008-7-22 21:23 发表


世上有各种各样的思路和异数
在这里发表一下
也是冲击
可以跳出固有的定势思维
也许在自己的面前会出现新的蓝天
在系统里面已事先设定
假如止损的资金不够
会提醒资金不够
胜败乃是兵家常事
输赢化作家常便饭

TOP

 23 123
发新话题