火车轨
发表于 2014-3-22 23:49:14
{:soso_e179:}
langshibin
发表于 2014-3-23 16:52:46
学习学习
月月朋
发表于 2014-3-23 17:24:29
好,顶了。
牛肉拉拉面
发表于 2014-3-23 18:08:45
看看再说
rwjrhh
发表于 2014-3-24 12:24:46
非常感谢!
rwjrhh
发表于 2014-3-24 12:26:55
非常感谢!
神投手
发表于 2014-3-24 16:52:22
{:soso_e100:}
leodong
发表于 2014-3-24 23:26:13
谢谢楼主!!!
jianjian9709
发表于 2014-3-25 16:06:47
好东西一定要顶!
jianjian9709
发表于 2014-3-25 16:06:48
好东西一定要顶!
jianjian9709
发表于 2014-3-25 16:06:54
好东西一定要顶!
一箭
发表于 2014-3-26 19:21:27
very goossssd
1027y2k
发表于 2014-3-26 23:03:12
请赐教下载链接
fxfycf
发表于 2014-3-28 15:14:40
谢谢,顶一个
Wi77
发表于 2014-3-28 16:25:04
..................
titch
发表于 2014-3-31 19:42:02
{:soso_e100:}
平淡随心
发表于 2014-4-2 22:36:35
学习学习
linyuan2010
发表于 2014-4-3 16:32:55
回复学习一下。
chuyunming
发表于 2014-4-4 04:23:30
新手,求解,求教
feitianxia
发表于 2014-4-4 16:02:23
[*]Input: Price((H+L)*.5), {???}
[*]PtUp(4.), PtDn(4.), {Max correction to change trend}
[*]MM_Model(2), {1 = % Risk Model; 2 = % Volatility Model;
[*]3 = Drawdown Model; 4 = Kelly Model; 5 = Williams' Model;
[*]6 = Fixed Ratio Model; 7= Market Money Model}
[*]MM(1), {% Risk parameter}
[*]MM_add(0), {% Risk for playing market money; 0 to disactivate}
[*]MaxVolat(100), {% Risk for playing market money; 100 to disactivate}
[*]MaxDD(20), {% Drawdown ?????}
[*]InitCapital(100000); {Initial capital to trade ????}
[*]Vars: LL(99999), HH(0), Trend(0), Volat(TrueRange);
[*]Vars: MP(0), Risk(Range), Num(1), add_num(0), red_num(0), FRDelta(0),
[*]DD(0),
[*]Equity(InitCapital), TotalEquity(InitCapital), EqTop(InitCapital),
[*]AssuredProfit(0), HPositionProfit(0), Kelly(0);
[*]
[*]
[*]MP = MarketPosition;
[*]Volat = 0.5 * TrueRange + 0.5*Volat;
[*]if MP <= 0 then begin
[*] if Price < LL then LL = Price;
[*] if Price cross above LL*(1 + PtUp*.01) then begin
[*] Trend = 1;
[*] HH = Price;
[*] end;
[*] end;
[*]
[*]if MP >= 0 then begin
[*] if Price > HH then HH = Price;
[*] if Price cross below HH*(1 - PtDn*.01) then begin
[*] Trend = -1;
[*] LL = Price;
[*] end;
[*] end;
[*]
[*]If trend = 1 then
[*] Risk = PtDn * .01 * close {+ Slippage};
[*]If trend = -1 then
[*] Risk = PtUp * .01 * close {+ Slippage};
[*]
[*]HPositionProfit = maxlist( OpenPositionProfit, HPositionProfit);
[*]AssuredProfit = HPositionProfit - Risk;
[*]Equity = InitCapital + NetProfit;
[*]TotalEquity = Equity + OpenPositionProfit;
[*]EqTop = MaxList(EqTop, TotalEquity);
[*]
[*]if MM_Model = 1 then { % Risk Model }
[*]Num = floor(MM * Equity *.01/Risk);
[*]if MM_Model = 2 then { % Volatility Model }
[*]Num = floor(MM * Equity *.01/ Volat / BigPointValue );
[*]if MM_Model = 3 then begin { Drawdown Model }
[*]Num = floor(MM * (Equity - (1 - MaxDD*.01) * EqTop) * .01 / Volat /
[*]BigPointValue);
[*]end;
[*]if MM_Model = 4 then begin { Kelly Model }
[*]If TotalTrades > 20 and GrossProfit > 0 then
[*]Kelly = NumWinTrades/TotalTrades * (1 - GrossLoss/GrossProfit)
[*]else
[*]Kelly = 0.1;
[*]if Kelly > .9 then Kelly = .9;
[*]Num = floor(MM * Kelly * Equity * .01 / Risk);
[*]{Print(Kelly);}
[*]end;
[*]if MM_Model = 5 then begin { Larry Williams' Model }
[*]value11 = MaxList(-LargestLosTrade / MaxList(CurrentContracts, 1) , Risk);
[*]Num = floor(MM * Equity *.01 / value11);
[*]end;
[*]if MM_Model = 6 then begin { Fixed Ratio Model }
[*]{ DD = MaxList(DD, (EqTop - TotalEquity)/MaxList(CurrentContracts, 1)) ; {Max
[*]Drawdown}
[*]if TotalTrades > 20 and DD > 0 then FRDelta = MM * DD *.01
[*]else }
[*]FRDelta = MM * volat * BigPointValue * .01; {Delta}
[*]value12 = MaxList(Equity - .5*close*(close + FRDelta)/FRDelta, 0.25);
[*]Num = floor(SquareRoot(2*value12/FRDelta + .25) + .5);
[*]end;
[*]if MM_Model = 7 then { Playing the market money }
[*]num = floor((MM * (InitCapital + MinList(NetProfit, 0)) + MM_add *
[*]MaxList(NetProfit, 0)) * .01 / Volat / BigPointValue);
[*]{ Entries}
[*]if trend = 1 and trend <> 1 then buy("Trend.LE") num contracts next barat market;
[*]if trend = -1 and trend <> -1 then sellshort("Trend.SE") num contracts next barat market;
[*]add_num = floor( MM_add * AssuredProfit * .01/ Volat / BigPointValue);
[*]{ Assured Profit Pyramiding }
[*]if add_num > 0 and OpenPositionProfit > Volat * BigPointValue then begin
[*]if Trend = 1 and MP = 1 then buy("Add.LE") add_num contracts next barat market;
[*]if Trend = -1 and MP = -1 then sellshort("Add.SE") add_num contractsnext bar at market;
[*]end;
[*]red_num = floor((CurrentContracts * Volat * BigPointValue - MaxVolat *
[*]TotalEquity * .01)/ close);
[*]if red_num > 0 then begin
[*]if Trend = 1 and MP = 1 then sell("Red.LX") red_num contracts next bar at market;
[*]if Trend = -1 and MP = -1 then buytocover("Red.SX") red_num contracts next barat market;
[*]end;
[*]if Num < 1 then Num = 1;