2014年1月22日 星期三

●外資成本預估 - Excel 樞紐分析表(3) [程式碼]

EasyTrader ArtNo 103
舊文 從外資持倉成本談交易策略提到了當外資持倉成本與期貨之間的差異可以作為策略元素的參考,那麼外資成本可以從那兒估算呢 ? 如果讀者有注意每日期交所下載的資料內容有契約金額的資料,透過公式的計算可以約略估算外資手中籌碼的成本,下表是我們練習作樞紐分析表所得到的近一個月資料!接下來要加入幾個公式


公式內容如下表

依下圖1、2、3方式加入欄位名稱及公式

再將所建立的新欄位依需求加入配置



紅框框內容就是我們所估算的外資成本與多空成本差距,同樣的我們可以將計算的成本利用新商品建立方式作為策略的參考元素或指標

指標程式碼(利用外資成本為中心 加上 n 倍 ATR 作成上下通道指標 -如下圖)


input:Up1(4),Up2(2),Dn1(4),Dn2(2) ;
vars:cdp(0),ah(0),nh(0),nl(0),al(0);
if date<>date[1] then begin
Value1 = Close of Data3 ;
Value2 = Close of Data4 ;
cdp = (Value1+Value2)/2;
Value3 = Average(TrueRange,3) ;
{Value3 = Volatility(3) ;}
ah = cdp + Value3 * Up1;
nh = cdp + Value3 * Up2;
nl = cdp - Value3 * Dn2;
al = cdp - Value3 * Dn1;
end ;

plot1(ah,"ah") ;
plot2(nh,"nh") ;
plot3(nl,"nl");
plot4(al,"al");

策略程式碼
input:Tradestoploss(0.035),TimeEntry(905),TimeExit(1255),TimeFlat(1335),tradeprofit(0.03),HLrange(21),RangeBar(5);
vars:cdp(0),ah(0),nh(0),nl(0),al(0),HL(0);
vars: MP(0),IsBalanceDay(false),PF(0),PL(0),DayHigh(99999),DayLow(0) ;

MP = MarketPosition ;
if DAYofMonth(Date) > 14 and DAYofMonth(Date) < 22 and DAYofWeek(Date)= 3 then isBalanceDay =False ;

if date<>date[1] then begin

{ ******** for QFII ***********}
input:Up1(4),Up2(2),Dn1(4),Dn2(2),BarLen(3) ;
Vars:OI_data1(0),OI_data2(0) ;
{ Data3 多單留倉成本 data4 空單留倉成本 }
OI_data1 = Close of Data3 ;
OI_data2 = Close of Data4 ;
cdp = (OI_data1+OI_data2)/2;
Value3 = AvgTrueRange(BarLen) ;
ah = cdp + Value3 * Up1;
nh = cdp + Value3 * Up2;
nl = cdp - Value3 * Dn2;
al = cdp - Value3 * Dn1;
{******************************}
end ;

PF = AvgPrice*TradeProfit ;
PL = AvgPrice*TradeStopLoss ;

if DataCompression {BarType} < 2 then Begin
if Close > OpenD(0) and OpenD(0) > CloseD(1) then Condition98 = true
else if Close < OpenD(0) and OpenD(0) < CloseD(1) then Condition98 = false;
end else if DataCompression {BarType} >= 2 then
if Close > Open and Open > Close[1] then Condition98 = true
else if Close < Open and Open < Close[1] then Condition98 = false ;

if time > TimeEntry and time < TimeExit and Highest(Close,RangeBar)-Lowest(Close,RangeBar) > HLRange then Begin
if Condition98 {and High > DayHigh} and Close - Cdp > Up1 then Buy next bar at nh stop ;
if Condition98 = false {and Low < DayLow} and Close - Cdp < Dn1 then Sell next bar at nl stop ;
end;

setProfitTarget(PF*BigPointValue) ;
setstoploss(PL*BigPointValue) ;

if IsBalanceDay then SetExitonClose ;
基本設定 台指期 5分K 留倉 回測週期 2010/2/22 ~2013/12/31 交易成本 1200


調整為新濾網後,改善如下圖


公式內容的多空交易價指的是當日市場的外資成交的價格預估,也就是在市場中的買賣的力道,讀者也可以拿來作策略元素的參考喔!

1 留言:

匿名 提到...

站長您好 請問我想用ADX過濾5分鐘 15分鐘的狹幅盤整 參數應該設多少 盤整界定應該設多少呢感恩! 小歪 joylin_yy@yahoo.com.tw

張貼留言

如果有私人問題想請教,請透過網站右方『與站長聯絡』之表單,謝謝!

----------------------------------------------------------------------------------------------------
網站聲明(Disclaimer)
本教學網站內所提供之程式碼(包括函數、指標、訊號)屬開放程式碼,用意在於讓使用者學習程式語法之撰寫,使用者可以任意修改語法內容並調整參數。本網站所有之內容(包括文章、影片、歷史紀錄、程式碼、教材)限用於個人學習使用,請勿轉寄、濫用,嚴禁私自串接帳戶交易。
-------------------------------------------------------------------------------------------------