对冲基金系统和EA - 页 14

 
gkozlyk:
大家好,我想分享一个在另一个网站上分享的系统,我在模拟手动交易中取得了不错的成绩。

以下是原始链接:http://www.strategybuilderfx.com/forums/showthread.php?t=16093&page=1&pp=8

第一篇文章有原来的规则,但现在的区别是加入了50点的止损。 以下是我发现的可以使用该规则的货币对,以及它们所尊重的止盈。

欧洲/美元,10点止损

英镑/美元,10点止损

美元/瑞郎,10点止损

美元/日元,10个交易点

欧洲/日圆,12个交易点

巴布/日元,15个交易日

欧元/英镑,10个交易点

自4月16日以来,在FXDD的模拟账户上,使用1手起始交易(10美元/点),在22:00和00:00使用上述7种货币对共获得6973美元,7347美元。

我个人在22:00GMT(北京时间下午2点)和00:00GMT(北京时间下午4点)进行的交易都取得了良好的成功。 对于下午2点的交易,我在下午2点后立即进行,这样我就不会被扣除每日利息。 下午4点的我在3点45分做,这样他们就会在下午4点发生的基于日圆的货币对的运动之前进入。

现在我把它贴在这里的原因是要开始做一个专家顾问,因为这里似乎比我去过的其他地方有更多成功的程序/程序员。

所附的是EA 1.1版,在我看来,这是最好的版本。 其他版本可以在前面提到的主题的前12页中找到。

我注意到这个EA的主要问题是,它不能在FXDD的22:00GMT或00:00GMT执行交易。 我可以让它在其他时间工作,但这对系统没有任何帮助。 因此,如果有任何改变或意见,我们将不胜感激。

谢谢你。

格雷厄姆

我没有读完整个主题,但你是否让EA在你想要的时候进行交易?你是用这个代码吗?如果你发布了一个新的EA,它是在哪个帖子上?我想转发测试。

谢谢

/*

Each "Trading Time" zone 1 through 4 has a Start and an End.

To trade all day , set "day"...Start1=0 and "day"...End4=24. This is needed for each trading day.

To skip a full day, set "day"...Start1=0 and "day"...End4=0.

Note: EA is coded to use your Local PC Time.

Here is a Monday example.

MonTradeHourStart1 = 0; - (Trading Time zone 1 start)

MonTradeHourEnd1 = 8; - (Trading Time zone 1 end)

MonTradeHourStart2 = 10;

MonTradeHourEnd2 = 16;

MonTradeHourStart3 = 18;

MonTradeHourEnd3 = 20;

MonTradeHourStart4 = 22;

MonTradeHourEnd4 = 24;

In above schedule, EA trades from 00:00 (midnight) to 08:00, then from 10:00 to 16:00, then from 18:00 to 20:00, then from 22:00 to 24:00.

Non-Trading Time is from 08:00 to 10:00, then from 16:00 to 18:00, then from 20:00 to 22:00.

*/

extern int SunTradeHourStart1 = 0; // 4 trading zones per day. To bypass a day, all zeros (=0)for that day.

extern int SunTradeHourEnd1 = 0;

extern int SunTradeHourStart2 = 0;

extern int SunTradeHourEnd2 = 0;

extern int SunTradeHourStart3 = 0;

extern int SunTradeHourEnd3 = 0;

extern int SunTradeHourStart4 = 0;

extern int SunTradeHourEnd4 = 24;

extern int MonTradeHourStart1 = 0;

extern int MonTradeHourEnd1 = 0;

extern int MonTradeHourStart2 = 0;

extern int MonTradeHourEnd2 = 0;

extern int MonTradeHourStart3 = 0;

extern int MonTradeHourEnd3 = 0;

extern int MonTradeHourStart4 = 0;

extern int MonTradeHourEnd4 = 24;

extern int TueTradeHourStart1 = 0;

extern int TueTradeHourEnd1 = 0;

extern int TueTradeHourStart2 = 0;

extern int TueTradeHourEnd2 = 0;

extern int TueTradeHourStart3 = 0;

extern int TueTradeHourEnd3 = 0;

extern int TueTradeHourStart4 = 0;

extern int TueTradeHourEnd4 = 24;

extern int WedTradeHourStart1 = 0;

extern int WedTradeHourEnd1 = 0;

extern int WedTradeHourStart2 = 0;

extern int WedTradeHourEnd2 = 0;

extern int WedTradeHourStart3 = 0;

extern int WedTradeHourEnd3 = 0;

extern int WedTradeHourStart4 = 0;

extern int WedTradeHourEnd4 = 24;

extern int ThurTradeHourStart1 = 0;

extern int ThurTradeHourEnd1 = 0;

extern int ThurTradeHourStart2 = 0;

extern int ThurTradeHourEnd2 = 0;

extern int ThurTradeHourStart3 = 0;

extern int ThurTradeHourEnd3 = 0;

extern int ThurTradeHourStart4 = 0;

extern int ThurTradeHourEnd4 = 24;

extern int FriTradeHourStart1 = 0;

extern int FriTradeHourEnd1 = 0;

extern int FriTradeHourStart2 = 0;

extern int FriTradeHourEnd2 = 0;

extern int FriTradeHourStart3 = 0;

extern int FriTradeHourEnd3 = 0;

extern int FriTradeHourStart4 = 0;

extern int FriTradeHourEnd4 = 24;

//----------------------- ENTER POSITION BASED ON OPEN

int EnterPositionBasedOnOpen()

{

int ret;

double myMA =iMA(NULL,MA_timeframe,MA_length,0,MODE_SMA,PRICE_OPEN,0);

double RVI=iRVI(NULL,0,10,MODE_MAIN,0)-iRVI(NULL,0,10,MODE_MAIN,1); // included by Renato

RVI0_RVI1=RVI;

// Print(" Top, Bid ",myMA*(1+Percent/100)," ",Bid);

// if((myMA*(1+Percent/100))<Bid) Print(" Top, Bid ",myMA*(1+Percent/100)," ",Bid);

CloseTheseTrades();

if(UseEquityProtection) EquityProtection();

if(MyOrdersTotal()(MinMarginLevel/100))

{

int h=TimeHour(TimeLocal());

int trade=0;

trade=0;

if(UseTradeScheduler==true)

{

if( (DayOfWeek()==0 && ((h >= SunTradeHourStart1) && (h = SunTradeHourStart2) && (h = SunTradeHourStart3) && (h = SunTradeHourStart4) && (h <= (SunTradeHourEnd4-1)))) ||

(DayOfWeek()==1 && ((h >= MonTradeHourStart1) && (h = MonTradeHourStart2) && (h = MonTradeHourStart3) && (h = MonTradeHourStart4) && (h <= (MonTradeHourEnd4-1)))) ||

(DayOfWeek()==2 && ((h >= TueTradeHourStart1) && (h = TueTradeHourStart2) && (h = TueTradeHourStart3) && (h = TueTradeHourStart4) && (h <= (TueTradeHourEnd4-1)))) ||

(DayOfWeek()==3 && ((h >= WedTradeHourStart1) && (h = WedTradeHourStart2) && (h = WedTradeHourStart3) && (h = WedTradeHourStart4) && (h <= (WedTradeHourEnd4-1)))) ||

(DayOfWeek()==4 && ((h >= ThurTradeHourStart1) && (h = ThurTradeHourStart2) && (h = ThurTradeHourStart3) && (h = ThurTradeHourStart4) && (h <= (ThurTradeHourEnd4-1)))) ||

(DayOfWeek()==5 && ((h >= FriTradeHourStart1) && (h = FriTradeHourStart2) && (h = FriTradeHourStart3) && (h = FriTradeHourStart4) && (h <= (FriTradeHourEnd4-1)))))

{

trade=1;

}

}

if(UseTradeScheduler==false) trade=1;

if(trade==0)text="Non-Trading Time";
 

我使用该EA进行前瞻性测试已经有几个月了。 它可以在我的网站 找到,在刺猬区的研究。

希望这对你有帮助。

GK

 
gkozlyk:
我已经使用该EA进行前瞻性测试几个月了。 它可以在我的网站 找到,在刺猬区的研究。

希望这有帮助。

GK

好的,谢谢。我去看看。

 

读到我的眼睛发亮为止!

哇,读了很多,但我有个问题要回到开头......

你开了一个 "对冲"......买入和卖出订单 在同一时间......00:00 gmt。

设置你的TP为14。

你怎么处理现在是负数的订单?

你是否在盈利的TP水平上打开另一个对冲?

我对这个问题感到迷茫....

 
Jimbo61:
哇,读了很多书,但我有个问题要回到开头......

你开了一个 "对冲"......在同一时间买入和卖出订单......00:00 gmt。

设置你的TP为14。

你怎么处理现在是负数的订单?

你会在盈利的TP水平上再开一个对冲吗?

我对这个问题感到迷茫....

最初的买入和卖出只能保持原样。

刺猬EA应该做的是利用市场在非高峰期的正常震荡,所以通常买入和卖出交易都会在某些时候TP。 一旦他们TP,在下一个交易日之前,他们不会被任何其他交易取代(除非你使用第三交易和/或奖励交易)。

希望这有帮助。

GK

 

有谁还在使用这个,哪个版本对你有用......

1.1版还是1.3版?

gkozlyk:
好的,这里是原线程中的EA和设置/它们的作用。 现在,我不是原始过程的一部分,但我希望看到一个EA的创建,执行交易,就像我一直手动做的,并取得了巨大的成功。 欲了解更多信息,回答具体的EA问题,以及所有应得的荣誉,请查阅本主题第1帖的原始主题。 对这些EA的支持仅用于资源目的,但不支持或维护这里,仅作为参考。 以下是我发布的EA名称、帖子#和该帖子的简介。 随函附上所有EA的压缩文件。

现在开始看EA。

------------------- HedgeTest.mq4 ---帖子#2

http://www.strategybuilderfx.com/forums/showpost.php?p=149755&postcount=2

附上一个指标,你可以用它来直观地看到它在图表上的情况。

如果红线或蓝线被突破了一个刻度,就意味着达到了买入/卖出上限。我使用1小时图来查看。

变量。

Offset=14; - 高于/低于当天开盘价的点位数

TimeZoneOfData=0; - 默认情况下,如果数据的时区是在GMT 0(你的交易账户的时区),那么数据的时区是在GMT 0。

------------------- HedgeHog 1.0.mq4 ---帖子#40

http://www.strategybuilderfx.com/forums/showpost.php?p=149755&postcount=40

请不要在真实交易或模拟交易中使用这个EA - 它还没有工作!!

我附上了一个EA的 "草稿",目前我遇到的主要问题是让它在格林尼治标准时间00:00启动交易。

1)它在挑选它想交易的日子,而不是每天在格林尼治标准时间00:00进行交易。

2)不能同时输入买入和卖出。

请各位程序员帮忙,!!!!。

以下是在它想做的时候工作的程序(测试日期为1/2/06至1/31/06的15分钟数据)。

如果(TimeHour(Time[0])==0+BrokerOffsetToGMT && TimeMinute(Time[0])==0)

{

输入卖出()。

输入买入()。

}

------------------- HedgeHog.mq4 ---帖子#82

http://www.strategybuilderfx.com/forums/showpost.php?p=149755&postcount=82

有了这个EA。但回测时似乎没有获利。

------------------- HedgeHog v1.1.mq4 ---帖子#88

http://www.strategybuilderfx.com/forums/showpost.php?p=149755&postcount=88

这是有实施止损的原始EA。

***这是我发现的性能最好的一个,因为它是纯粹的带止损的对冲交易者 ***

------------------- HedgeHogUltra v1.1.mq4 ---帖子#95

http://www.strategybuilderfx.com/forums/showpost.php?p=149755&postcount=95

这是为你的ULTRA策略准备的EA。我用止损单代替市场。当一个订单被触发时,有2个机会可以关闭相反的订单。你可以选择PO_mode。

0 - 当对面的订单被激活时关闭

1 - 在23:55关闭

没有对不同经纪商的时间设置进行调整,所以如果你在格林威治时间以外的平台上使用它,你必须改变时间设置。

***基于第87号帖子中的策略。 该交易员使用超强策略,不做初始对冲,而是采用括号式交易(进场买入止损和卖出止损)。 好主意,但也许作为未来的一个选择。***

------------------- HedgeHog_v1.3.mq4 --- #104帖子

http://www.strategybuilderfx.com/forums/showpost.php?p=149755&postcount=104

在EA的属性中指定的时间启动市场订单(非挂单)。

变化。

它只在指定时间启动1笔交易。它使用5M抛物线SAR来决定交易的方向(买入/卖出)。这至少给了我们一个争取正确的机会。

追踪止损:这不仅有助于我们的交易,而且可以减少我们最终被卡住的止损额。

设置。

StartHr=0; // 开始交易的起始时间

StartMin=30; // 开始交易的分钟数

StopLoss=75;

TakeProfit=20;

Lots=1;

DaysOfClose=2; // 在关闭未平仓订单前的多少天

TS_Mode=1; // 使用跟踪止损 0=NO 1=YES 2=TS Only

TS_Trigger=5;

TS_Sensitivity=5;

*** 这个系统在PSar的基础上执行1笔交易,所以不再是一个对冲系统。 这就是为什么我坚持使用V1.1版 ***

-----------------------

我希望这有助于我们的事业。 最后,当我在另一个话题中寻找信息时,我发现了MoneyQuest在2月和3月的欧洲/美元的结果。 以下是统计数字,交易日志附在 "对冲猪交易结果.zip "中。

原帖在此:http://www.strategybuilderfx.com/forums/showpost.php?p=149755&postcount=234

以下是他的结果总结。

赢家数量:22

亏损次数:5

胜率:81.5

总利润:700点

总亏损:192点

盈利系数:3.65

最大连胜次数:8

最大连续亏损次数:1

最大跌幅:90点

最大交易手数:6

他的结果确实证实了我所得到的结果也是如此。 所以我希望你们喜欢这些数据
 

MP - Martingale - 他们不把这些放在马身上吗?

WNW:
有一些马丁格尔的粉丝不同意我的观点,那就是任何马丁格尔最终都会打破你的账户。寻找一个简单的策略,有一个积极的期望值,并随着你资产的增长而增加很多。

======================================================

说得好,因为人们必须明白,马丁格尔是一种 "赌博 "策略(结果不那么令人难忘),而外汇不是赌博,而是一种趋势跟踪,积极依赖支持和阻力的交易形式,其运动远远不是随机的

如果你只是简单地学习外汇如何移动它的货币,它变得真的很难失去!

好好享受,好好交易

mp

 

关于对冲想法的帮助

如果有人能提供帮助,我只是想要一个简单的EA,在任何日线图的收盘时进行对冲交易(买入和卖出)。 请帮助我

 
sdln28:
如果有人能提供帮助,我只想要一个简单的EA,在任何日线图的收盘时进行对冲交易(买入和卖出)。 请帮助!!!。

这个主题是许多对冲EA风格中的一个。你可以使用论坛上的谷歌搜索来寻找更多的,也许是符合你需求的那个。

 

对冲网格趋势跟踪系统(刺猬)

你好。

这是我一直在使用的一个系统,它似乎在马丁格尔对冲网格系统不适用的市场时期为我工作。我把它称为 "刺猬"。

我并不幻想这个想法是原创的,所以如果有现成的EA来自动化这样一个概念,请给我指出正确的方向。

基本概念是这样的。

手段大小和网格大小以及TP,SL的必须是用户可调整的。

下面是一个例子。

使用15个点的网格交易系统,以一个可能即将突破趋势的商品为例,例如,欧元兑美元从床上掉下来的头和肩的模式。

然后

同时下一个0.5手的市场买单和一个0.5手的市场卖单

将0.5手的买入止损放在高于15点的位置,将0.5手的卖出止损放在低于最初进场的15点的位置。

将另一个0.5手的买入止损放在高于30点的位置,将0.5手的卖出止损放在低于初始入口30点的位置。

再买入0.5手,高于45点,卖出0.5手,低于初始进入的45点。

沿着趋势方向,每隔15个点继续增加0.5手仓位。

在每个仓位上设置2倍网格大小的初始止损(即30点)。

一旦有15个点的利润,就将初始止损调整为(-15点)。

一旦盈利30个止损点,就将所有止损点调整为收支平衡。

现在,只要趋势持续,就随它运行。

当最后一个开仓的头寸达到-30点的止损时,或者是最后第二个开仓的头寸在盈亏平衡时平仓(而最后一个头寸已经达到SL),给市场多一点喘息的机会,平掉所有头寸并删除所有挂单。

为了让你了解我的想法。我从网格交易的角度来看,这是对市场趋势概念的一种 "缩减"。我通常的方式是采取一定的手数,进入市场,如果我错了,就会被阻止。这种方式仍有可能发生,但由于我的初始入市仓位较小,潜在损失较小,收益相当不错(但显然不如我一开始就开足手数,但最初的风险也较小),如果趋势继续下去,即使它仅有一点趋势,然后发生逆转,我的利润也锁定在所有未结头寸中,除了最后开的那一个,如果市场逆转超过我的网格大小,它最终会被阻止。

你认为这样做是否可行?

请发表意见 ....

谢谢

谢谢

附加的文件: