大伊人青草狠狠久久-大伊香蕉精品视频在线-大伊香蕉精品一区视频在线-大伊香蕉在线精品不卡视频-大伊香蕉在线精品视频75-大伊香蕉在线精品视频人碰人

您現在的位置:程序化交易>> 程序化交易>> 系統交易>>正文內容

Super Cobmo超級組合當沖交易系統[系統交易]

Super Cobmo超級組合當沖交易系統


今天想要報告的是Building Winning Trading Systems with TradeStation裡面的最后一個交易系統。名稱叫做Super Combo Day Trading Strategy,中文我翻譯成超級組合當沖交易系統。

 

 

這個系統的內容就像他的名字一樣,把相當多的觀念和技術組合起來,以致于讓這個系統太複雜,跟我認為交易系統應該要越簡單越好的觀念稍有出入。所以我就不仔細介紹這個當沖系統的觀念,只把他的程式碼分享出來。如果有人想試用這個系統的話,記得要在chart 裡面insert兩個symbol, 分別是這個商品的5min的線圖,和1日的線圖。因為這個系統會用到data2(也就是日線)的資料。我自己是簡單測試過臺指期的資料了,看來績效很爛,所以怕麻煩的人可以不用試了。

 

以下是EASYLANUAGE 語言

 

 

 

{Super Combo by George Pruitt

This intraday trading system will illustrate the multiple data handling

capabilities of TradeStation. All pertinent buy and sell calculations will be

based on daily bars and actual trades will be executed on 5-min bars. I have

made most of the parameters input variables.}

 

Inputs:waitPeriodMins(30),initTradesEndTime(1430),liqRevEndTime(1200),

thrustPrcnt1(0.30),thrustPrcnt2(0.60),breakOutPrcnt(0.25),

failedBreakOutPrcnt(0.25),protStopPrcnt1(0.25),protStopPrcnt2(0.15),

protStopAmt(3.00),breakEvenPrcnt(0.50),avgRngLength(10),avgOCLength(10);

Variables:averageRange(0),averageOCRange(0),canTrade(0),buyEasierDay(FALSE),

sellEasierDay(FALSE),buyBOPoint(0),sellBOPoint(0),longBreakPt(0),

shortBreakPt(0),longFBOPoint(0),shortFBOPoint(0),barCount(0),

intraHigh(0),intraLow(999999),buysToday(0),sellsToday(0),

currTrdType(0),longLiqPoint(0),shortLiqPoint(0),yesterdayOCRRange(0),

intraTradeHigh(0),intraTradeLow(999999);

{Just like we did in the pseudocode—let's start out with the daily bar

calculations. If Date <> Date[1]—first bar of day}

if(Date <> Date[1]) then {save time by doing these calculations once per day}

begin

averageRange = Average(Range,10) of Data2; {Data 2 points to daily bars}

yesterdayOCRRange = AbsValue(Open of Data2-Close of Data2);

averageOCRange = Average(AbsValue(Open of Data2-Close of Data2),10);

canTrade = 0;

if(yesterdayOCRRange< 0.85*averageOCRange) then canTrade = 1;

buyEasierDay = FALSE;

sellEasierDay = FALSE;

{See how we refer to Data2 - the daily data}

if(Close of Data2 <= Close[1] of Data2) then buyEasierDay = TRUE;

if(Close of Data2 > Close[1] of Data2) then sellEasierDay = TRUE;

if(buyEasierDay) then

begin

buyBOPoint = Open of data1 + thrustPrcnt1*averageRange;

sellBOPoint = Open of data1 - thrustPrcnt2*averageRange;

 

 

 

end;

if(sellEasierDay) then

begin

sellBOPoint = Open of data1 - thrustPrcnt1*averageRange;

buyBOPoint = Open of data1 + thrustPrcnt2*averageRange;

end;

longBreakPt = High of Data2 + breakOutPrcnt*averageRange;

shortBreakPt = Low of Data2 - breakOutPrcnt*averageRange;

shortFBOPoint = High of Data2 - failedBreakOutPrcnt*averageRange;

longFBOPoint = Low of Data2 + failedBreakOutPrcnt*averageRange;

{Go ahead and initialize any variables that we may need later on in the day}

barCount = 0;

intraHigh = 0;intraLow = 999999; {Didn't know you could do this}

buysToday = 0;sellsToday = 0;{You can put multiple statements on one

line}

currTrdType = 0;

end; {End of the first bar of data}

{Now let's trade and manage on 5-min bars}

if(High > intraHigh) then intraHigh = High;

if(Low < intraLow ) then intraLow = Low;

barCount = barCount + 1; {count the number of bars of intraday data}

if(barCount > waitPeriodMins/BarInterval and canTrade = 1) then

{have we waited long enough—wait PeriodMin is an input variable and

BarInterval is set by TradeStation. Wait PeriodMins = 30 and BarInterval = 5,

so 30/5 = 6}

begin

if(MarketPosition = 0) then

begin

intraTradeHigh = 0;

intraTradeLow = 999999;

end;

if(MarketPosition = 1) then

begin

intraTradeHigh = MaxList(intraTradeHigh,High);

buysToday = 1;

end;

if(MarketPosition =-1) then

begin

intraTradeLow = MinList(intraTradeLow,Low);

sellsToday = 1;

end;

if(buysToday = 0 and Time < initTradesEndTime) then

Buy("LBreakOut") next bar at buyBOPoint stop;

if(sellsToday = 0 and Time < initTradesEndTime) then

 

 

 

SellShort("SBreakout") next bar at sellBOPoint stop;

if(intraHigh > longBreakPt and sellsToday = 0 and Time <

initTradesEndTime) then

SellShort("SfailedBO") next bar at shortFBOPoint stop;

if(intraLow < shortBreakPt and buysToday = 0 and Time <

initTradesEndTime) then

Buy("BfailedBO") next bar at longFBOPoint stop;

{The next module keeps track of positions and places protective stops}

if(MarketPosition = 1) then

begin

longLiqPoint = EntryPrice - protStopPrcnt1*averageRange;

longLiqPoint = MinList(longLiqPoint,EntryPrice - protStopAmt);

if(MarketPosition(1) = -1 and BarsSinceEntry = 1 and

High[1] >= shortLiqPoint and shortLiqPoint < shortFBOPoint)

then

currTrdType = -2; {we just got long from a short liq reversal}

if(currTrdType = -2) then

begin

longLiqPoint = EntryPrice - protStopPrcnt2*averageRange;

longLiqPoint = MinList(longLiqPoint,EntryPrice -

protStopAmt);

end;{ m.weiqiv.net.cn }

if(intraTradeHigh >= EntryPrice + breakEvenPrcnt*averageRange)

then

longLiqPoint = EntryPrice; {BreakEven trade}

if(Time >= initTradesEndTime) then

longLiqPoint = MaxList(longLiqPoint,Lowest(Low,3)); {Trailing

stop}

if(Time < liqRevEndTime and sellsToday = 0 and

longLiqPoint <> EntryPrice and BarsSinceEntry >= 4) then

begin

SellShort("LongLiqRev") next bar at longLiqPoint stop;

end

else begin

Sell("LongLiq") next bar at longLiqPoint stop;

end;

end;

if(MarketPosition =-1) then

begin

shortLiqPoint = EntryPrice+protStopPrcnt1*averageRange;

shortLiqPoint = MaxList(shortLiqPoint,EntryPrice + protStopAmt);

if(MarketPosition(1) = 1 and BarsSinceEntry(0) = 1 and

Low [1] <= longLiqPoint and longLiqPoint > longFBOPoint) then

currTrdType = +2; {we just got long from a short liq reversal}

if(currTrdType = +2) then

begin

shortLiqPoint = EntryPrice + protStopPrcnt2*averageRange;

shortLiqPoint = MaxList(shortLiqPoint,EntryPrice + protStopAmt);

end;

 

 

 

if(intraTradeLow <= EntryPrice - breakEvenPrcnt*averageRange) then

shortLiqPoint = EntryPrice; {BreakEven trade}

if(Time >= initTradesEndTime) then

shortLiqPoint = MinList(shortLiqPoint,Highest(High,3));

{Trailing stop}

if(Time < liqRevEndTime and buysToday = 0 and

shortLiqPoint <> EntryPrice and BarsSinceEntry >= 4) then

begin

Buy("ShortLiqRev") next bar at shortLiqPoint stop;

end

else begin

BuyToCover("ShortLiq") next bar at shortLiqPoint stop;

end;

end;

end;

SetExitOnClose;

 

有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友

可聯系技術人員 QQ: 511411198   點擊這里給我發消息進行 有償 編寫!不貴!點擊查看價格!


【字體: 】【打印文章】【查看評論

相關文章

    沒有相關內容
主站蜘蛛池模板: 伊色综合久久之综合久久 | 欧美日韩一卡二卡 | 欧美成人中文字幕dvd | 欧美成人一级视频 | 免费一级毛片不卡在线播放 | 免费日本黄色网址 | 久久久久久夜精品精品免费 | 欧美日韩午夜视频 | 四虎影院在线免费观看视频 | 一级特黄aaa大片在 一级特黄aaa大片在线观看 | 狠狠综合久久久久综合小说网 | 国产免费久久精品99 | 中国一级毛片欧美一级毛片 | 国产成人乱码一区二区三区在线 | 色综合亚洲欧美在线 | 西西人体大胆77777视频 | 天天操天天擦 | 亚洲免费中文字幕 | 全部免费毛片免费播放 | 九九国产在线 | 亚洲国产欧美久久香综合 | 免费在线不卡视频 | 777色狠狠一区二区三区香蕉 | 日日日日日日bbbbb视频 | 久久99精品久久只有精品 | 99久久综合国产精品免费 | 一级免费看片 | 欧美中文字幕在线 | 一区二区三区在线免费 | 免费中文字幕一级毛片 | 日韩中文字幕在线有码视频网 | 99久久99热精品免费观看国产 | 欧美色精品天天在线观看视频 | 美女羞羞免费网站 | 国产成人综合在线视频 | 操片免费 | 一级香蕉免费毛片 | 四虎精品福利视频精品 | 美国美女一级毛片免费全 | 国产成人短视频 | 亚洲免费网站在线观看 |