2011年3月31日 星期四

當日虧損額度餘額計算


程式交易小學堂─期貨投機事業的王道
限定當沖使用。

這是用來計算出場之後今天還有多少額度可以虧損的計算"函數"。使用的形式 DayMasLoss(100) 表示每天可以容忍虧損 100 點,是點數不是金額,因此當你使用在小台不需要去另外計算。

函數的程式碼如下,HTS版:
Param: MaxLossPoints(Numeric)
Vars: K(1),DayLoss(0)

K= iff(D>D[1], 1, K+1) ;
DayLoss= iff(K=300/BarInterval, MaxLossPoints, DayLoss) ;

if BarsSinceExit(0)=0 then
  DayLoss= DayLoss + PositionProfit(1)/PointValue ;
end if

DayMaxLoss= DayLoss


MultiCharts版:
Input: MaxLossPoints(Numeric);
Vars: K(1),DayLoss(0);

K= iff(D>D[1], 1, K+1) ;
DayLoss= iff(K=300/BarInterval, MaxLossPoints, DayLoss) ;

if BarsSinceExit(1)=0 then
  DayLoss= DayLoss + PositionProfit(1)/PointValue ;

DayMaxLoss= DayLoss;

這個函數作用在於跟當沖的停損機制做結合,比如我們在某當沖策略只接受最多一天虧損 100點,如果第一筆交易虧掉了20點,下一筆交易就最多只能虧損 80點,當然你還是可以把每一次交易的停損固定住的,而這個函數運用就不是用來一天只能交易多少次的控制。

以多單停損,每天只能接受虧損100點,舉例如下(HTS):
Value1= EntryPrice(0)-( DayMaxLoss(100)/absvalue(CurrentContracts) )

if MarketPosition>0 then
  ExitLong next bar at Value1 stop
end if
這個計算停損價位的 Value1 會隨著已經實現的虧損點數及持有多單的口數去做計算。

熱門文章