If you do not come up with any other solution, you can always alter 
the position size of each individual signal using custom backtester 
code.

Assuming that you are setting numbers of shares in the PostionSize 
calculation (as opposed to percentage of equity), something along the 
lines of the following (untested) code should work:

SetOption("UseCustomBacktestProc", True );

if (Status("action")== actionPortfolio) {
  bo = GetBacktesterObject();
  bo.PreProcess();

  for (bar = 0; bar < BarCount; bar++) {
    for (sig = bo.GetFirstSignal(bar); sig; sig = 
bo.GetNextSignal(bar)) {
      if (sig.IsEntry() && sig.PosSize > 100) {
        sig.PosSize = floor(sig.PosSize/100) * 100;
      }
    }

    bo.ProcessTradeSignals(bar);
  }

  bo.PostProcess();
}

Mike

--- In [email protected], Flávio Veloso <[EMAIL PROTECTED]> wrote:
>
> Hi all.
> 
> Is it possible to use different round lot sizes (e.g. by setting 
> RoundLotSize variable) depending on the number of shares that are 
going 
> to be bought/short?
> 
> Basically all I want is RoundLotSize = 100 for any position size 
that 
> results in more than 100 shares to be bought/short, and RoundLotSize 
= 1 
> for the rest.
> 
> For example:
> 
> Number of shares (based on PositionSize): 75
> Use RoundLotSize = 1
> Shares to buy = 75
> 
> Number of shares (based on PositionSize): 125
> Use RoundLotSize = 100
> Shares to buy = 100
> 
> Number of shares (based on PositionSize): 360
> Use RoundLotSize = 100
> Shares to buy = 300
> 
> Anyone doing this? If so, how?
> 
> Thanks in advance.
> 
> -- 
> Flávio
>

Reply via email to