今天是:
北京| 伦敦| 芝加哥| 东京|

 网站主页 | 股指期货 | 期货知识 | 系统交易 | 原创文集 | 资金管理

 当前位置:网站主页>系统交易> GHOST TRADER交易系统

GHOST TRADER交易系统

文章来源:  文章作者:  发布时间:2008-03-09

>> GHOST TRADER交易系统



Building Winning Trading Systems with TradeStation书里的6个交易系统之一的WLD版。
ChartScript Description
This trading system is disclosed in the book "Building Winning Trading Systems with TradeStation," by George Pruitt and John R. Hill. Pruitt and Hill are the principals of Futures Truth, the independent trading system testing company. In that capacity they have seen and forward tested literally thousands of trading systems and have developed informed opinions about what works and what doesn't work in the markets. Their recommendations thus merit consideration.

The strategy of this system is predicated on the thesis that winning trades are more likely to follow losing trades. Therefore, to implement this strategy the system is "ghost" or paper traded in the background and a real trade is entered only after a ghost or real losing trade. The ghost trading accurately simulates the action of Wealth-Lab to the extent that entry and exit conditions are evaluated, market position is maintained, simulated entry and exit prices are calculated, and hypothetical profits determined. However, the ghost system does not enter real trades. That is left to the real system which enters a real trade only following a real or ghost losing trade, logs that trade, and uses it in the determination of back test performance. The authors suggest that this system is mostly a template demonstrating how background ghost trading may be used to develop information for the use and benefit of foreground real trading.

The core trading logic itself is simple enough. Long and short trades are entered stop when the 9-day RSI crosses under/over the 70/30 critical levels preconditioned by the 9-day EMA being outside a channel formed by the 19-day EMA of highs and lows. Positions are closed stop when the EMA penetrates the highest high/lowest low of the past 20 days.

This system was back tested over five years against the WL-100 portfolio. The real system alone gave a RAR=34.7% and 148/425=34.8% winners. Using the ghost system and entering a new real trade only after a losing ghost or real trade yielded a RAR=20.7% and 144/426=33.8% winners thus calling the losing trade hypothesis into question. Alternatively, using the ghost system and entering a new trade only after a winning ghost or real trade resulted in a RAR=76.6% and 103/316=32.6% winners. It therefore appears, at least for this core logic, watchlist, and backtest period, that when you're hot you're hot!
q


WealthScript Code
Below is the WealthScript code for this ChartScript.

 

var Bar,paneRSI,myPosition :integer;
var myEntryPrice,myExitPrice,myProfit :float;
HideVolume;
myPosition:= 0;
myProfit:= -1;

for Bar:= 21 to BarCount-1 do
begin

{--------------------Ghost System--------------------}
{Simulate system, offset by one bar, in every respect to determine if last trade was loss}

if myPosition = 0 then
begin
if EMA(Bar-1,#Close,9) > EMA(Bar-1,#High,19) then
if CrossUnderValue(Bar-1,RSISeries(#Close,9),70) then
if PriceHigh(Bar) > PriceHigh(Bar-1) then
begin
myEntryPrice:= Max(PriceOpen(Bar),PriceHigh(Bar-1));
myPosition:= +1;
end;

if EMA(Bar-1,#Close,9) < EMA(Bar-1,#Low,19) then
if CrossOverValue(Bar-1,RSISeries(#Close,9),30) then
if PriceLow(Bar) < PriceLow(Bar-1) then
begin
myEntryPrice:= Min(PriceOpen(Bar),PriceLow(Bar-1));
myPosition:= -1;
end;
end;

if ((myPosition = +1) and (PriceLow(Bar) < Lowest(Bar-1,#Low,20))) then
begin
myExitPrice:= Min(Lowest(Bar-1,#Low,20),PriceOpen(Bar));
myProfit:= myExitPrice - myEntryPrice;
myPosition:= 0;
end;

if ((myPosition = -1) and (PriceHigh(Bar) > Highest(Bar-1,#High,20))) then
begin
myExitPrice:= Max(Highest(Bar-1,#High,20),PriceOpen(Bar));
myProfit:= myEntryPrice - myExitPrice;
myPosition:= 0;
end;

{-------------------Real System--------------------}
{Real trades are entered only if the last ghost or real trade resulted in a loss, i.e. myProfit < 0}
{myProfit:= -1;}

if ((MarketPosition = 0) and (myProfit < 0)) then
begin
if EMA(Bar,#Close,9) > EMA(Bar,#High,19) then
if CrossUnderValue(Bar,RSISeries(#Close,9),70) then
BuyAtStop(Bar+1,PriceHigh(Bar),'');
if EMA(Bar,#Close,9) < EMA(Bar,#Low,19) then
if CrossOverValue(Bar,RSISeries(#Close,9),30) then
ShortAtStop(Bar+1,PriceLow(Bar),'');
end;

if MarketPosition = +1 then
SellAtStop(Bar+1,Lowest(Bar,#Low,20),LastPosition,'');
if MarketPosition = -1 then
CoverAtStop(Bar+1,Highest(Bar,#High,20),LastPosition,'');
end;

{----------Plotting----------}
DrawLabel('GHOST TRADER',0);
DrawLabel('19-day EMA(hi/lo): dotted lines',0);
DrawLabel('9-day EMA(close): solid line',0);
PlotSeries(EMASeries(#High,19),0,#Blue,#Dotted);
PlotSeries(EMASeries(#low,19),0,#Blue,#Dotted);
PlotSeries(EMASeries(#Close,9),0,#Blue,#Thin);

paneRSI:=CreatePane(75,true,false);
DrawLabel('9-Day RSI(close)',paneRSI);
PlotSeries(RSISeries(#Close,9),paneRSI,#Blue,#Thin);
SetPaneMinMax(paneRSI,0,100);
DrawHorzLine(0,paneRSI,#Black,#Thin);
DrawHorzLine(70,paneRSI,#Black,#Thin);
DrawHorzLine(30,paneRSI,#Black,#Thin);

上一篇:交易系统的秘密和秘密的交易系统   下一篇:资金系统分析框架与指标

 

交易师原创文集

·交易师语录
·交易师与交易系统
·做坚定的系统交易者
·期货市场的消费者和投资者
·让交易成为一种习惯
·追求完美的误区
·防患未然与亡羊补牢
·交易系统的真理性、稳定性
·赚你份内的钱
·期货交易应学会休息

 

特别声明:以上除<交易师原创文集>外其余均转载于网络,由于大多文章出处不详,如有冒犯请来电,我们立即删除或为您署名。

Copyright © www.tradercn.com All Rights Reserved  京ICP备05006464号
交易师诠释什么是期货、什么叫期货、股指期货、什么是股指期货、黄金期货、期货软件、期货交易系统、期货投资
期市有风险,投资需谨慎