Entry for "CCI" should be just "CCI"  - not "trade.CCI"

  ----- Original Message ----- 
  From: Ilhan Ketrez 
  To: [email protected] 
  Sent: Friday, November 14, 2008 12:00 PM
  Subject: [amibroker] Adding custom metrics


  Dear friends,

  Regarding the addition of custom metrics to the backtest report, to simplify 
my question please find below a script from the AB documentation. Simply, I 
want to add, for example, CCI value, RSI value and various entry bar conditions 
instead of Initial risk or R multiple below. 

  In other words, just like trade.score gives entry score, I want to add 
"trade.cci" as entry cci to the backtest report. 

  Thank you in advance for your help.

  Best regards,
  Ilhan

  SetCustomBacktestProc(""); 

  MaxLossPercentStop = 10; // 10% max. loss stop 

  /* Now custom-backtest procedure follows */

  if

  ( Status("action") == actionPortfolio ) 
  { 

  bo = 

  GetBacktesterObject(); 
  bo.Backtest(

  1); // run default backtest procedure 
  SumProfitPerRisk = 

  0; 
  NumTrades = 

  0; 

  // iterate through closed trades first 

  for( trade = bo.GetFirstTrade(); trade; trade = bo.GetNextTrade() ) 
  { 


  // risk is calculated as the maximum value we can loose per trade 

  // in this example we are using max. loss stop 

  // it means we can not lose more than (MaxLoss%) of invested amount 

  // hence ris 
  Risk = ( MaxLossPercentStop / 

  100 ) * trade.GetEntryValue(); 
  RMultiple = trade.GetProfit()/Risk; 

  trade.AddCustomMetric(

  "Initial risk $", Risk ); 
  trade.AddCustomMetric(

  "R-Multiple", RMultiple ); 
  trade.AddCustomMetric(

  "Trend", trend ); 
  SumProfitPerRisk = SumProfitPerRisk + RMultiple; 

  NumTrades++; 

  } 

  expectancy3 = SumProfitPerRisk / NumTrades; 

  bo.AddCustomMetric( 

  "Expectancy (per risk)", expectancy3 ); 
  bo.ListTrades(); 

  } 

   

Reply via email to