$0.50/1000 (Per Execution)
$quantity * 0.0005;
$0.50 / 1000, $1 minimum per ticket (Per Order)
max(1, $quantity * 0.0005);
$0.50 / 1000, $10 maximum per ticket (Per Order)
min(10, $quantity * 0.0005);
$0.50 / 1000, $1 minimum, $10 maximum per ticket (Per Order)
max(1, min(10, $quantity * 0.0005));
$1 per execution (Per Execution)
return 1;
$2.95 per ticket (Per Order)
return 2.95;
$0.50 / 1000 Equities, 1.65 / contract options (Per Execution)
$instrumentType = getInstrumentType($symbol); if($instrumentType == INSTRUMENT_TYPE_OPTION) { return $quantity * 1.65; } else { return $quantity * 0.0005; }
Different rate for Select Symbols (Per Execution type)
if(in_array($symbol, array('AA','BAC','C','MSFT','QQQ'))) { return bcmul($quantity, '0.001'); } else return bcmul($quantity, '0.0015');
$1.50 fee Per Symbol per side, plus 0.00005 per share (Per Symbol type)
$sellSide = 1.50 + ($quantitySold * 0.00005); $buySide = 1.50 + ($quantityBought * 0.00005); return ($quantityBought > 0 ? $buySide : 0) + ($quantitySold > 0 ? $sellSide : 0);
Tiered Plans
Please note: currently the $monthlyVolume
variable in the formulas below includes volume across ALL types of securities (e.g. equities, options and futures volume would be combined). This means that the formula will probably not function as intended if more than one type of security is traded in an account.
Non-Regressive Tiered Plan (Per Execution)
The formula below will assess 0.0015 / share the first 500,000 shares traded in a month, 0.001 / share for shares 500,001 - 1,000,000 and 0.0006 / share for share 1,000,001 and up.
return computeTieredFee($quantity, $monthlyVolume, array( 500000 => '0.0015', 1000000 => '0.001', '' => '0.0006'), false);
Regressive Tiered Plan (Per Execution)
The formula below will assess 0.0015 / share for the first 500,000 shares traded in a month. If the next tier is reached, the trader will receive a 0.0005 * 500,000 ($250) rebate and subsequent shares are assessed a rate of 0.001 / share. The rebate is credited on the execution that crosses the tier.
return computeTieredFee($quantity, $monthlyVolume, array( 500000 => '0.0015', 1000000 => '0.001', '' => '0.0006'), true);
Non-Regressive Tiered Plan (Per Order w/ $2 tkt)
return bcadd(computeTieredFee($quantity, $monthlyVolume, array( 1000000 => '0.001', '' => '0.00075'), false), 2);
Tiered Plan - calculated on Order Qty (Per Order)
if($quantity < 301) { return $quantity * 0.00001; } elseif ($quantity < 601) { return $quantity * 0.00002; } elseif ($quantity < 1001) { return $quantity * 0.00003; } elseif ($quantity < 1301) { return $quantity * 0.00004; } elseif ($quantity < 1601) { return $quantity * 0.00005; } elseif ($quantity < 2001) { return $quantity * 0.00006; } else { return $quantity * 0.00007; }