$0.50/1000 (Per Execution or Per Order)
No Format |
---|
$quantity * 0.0005; |
$0.50/1000 (Fee Rules)
No Format |
---|
=> 0.50 |
$0.50 / 1000, $1 minimum per ticket (Per Execution or Per Order)
No Format |
---|
max(1, $quantity * 0.0005); |
$0.50 / 1000, $1 minimum per ticket (Fee Rules)
No Format |
---|
=> max(0.005, [1.00]) |
$0.50 / 1000, $10 maximum per ticket (Per Execution or Per Order)
No Format |
---|
min(10, $quantity * 0.0005); |
$0.50 / 1000, $10 maximum per ticket (Fee Rules)
No Format |
---|
=> min(0.005, [10.0]) |
$0.50 / 1000, $1 minimum, $10 maximum per ticket (Per Execution or Per Order)
No Format |
---|
max(1, min(10, $quantity * 0.0005)); |
$1 per execution or order (Per Execution or Per Order)
No Format |
---|
return 1; |
$2.95 per ticket (Per Order$1 per fill (Fee Rules)
No Format |
---|
return 2.95;=> [1] |
$0.50 / 1000 Equities, 1.65 / contract options, 1.00 / futures contract (Per Execution or Per Order)
No Format |
---|
$instrumentType = getInstrumentType($symbol); if($instrumentType == INSTRUMENT_TYPE_OPTION) { return $quantity * 1.65; } else if($instrumentType == INSTRUMENT_TYPE_FUTURE) { return $quantity * 1.00; } else { return $quantity * 0.0005; } |
$0.50 / 1000 Equities, 1.65 / contract options, 1.00 / futures contract (Fee Rules)
No Format |
---|
type=equity => 0.0005
type=option => 1.65
type=future => 1.00
|
Different rate for symbols that have Exchange code of OBB or PNK (Per Execution or Per Order)
No Format |
---|
if($listingExchange == 'OBB' || $listingExchange == 'PNK') { $fee = bcmul(bcmul($quantity, $price), '0.001'); // This is charging 10 basis pts of gross value } else $fee = bcmul($quantity, '0.001') ; // This is the per share rate for non-OBB/PNK activity return $fee; |
Different rate for symbols that have Exchange code of OBB or PNK (Fee Rules)
No Format |
---|
exch=OBB,PNK => 0.001% // This is charging 10 basis pts of gross value
=> 0.001 // This is the per share rate for non-OBB/PNK activity |
Different rate for Select Symbols (Per Execution type or Per Order)
No Format |
---|
if(in_array($symbol, array('AA','BAC','C','MSFT','QQQ'))) {
return bcmul($quantity, '0.001');
} else return bcmul($quantity, '0.0015'); |
Different rate for Select Symbols (Fee Rules)
No Format |
---|
symbol=AA,BAC,C,MSFT,QQQ => 0.001
=> 0.0015 |
$1.50 fee Per Symbol per side, plus 0.00005 per share (Per Symbol type)
No Format |
---|
$sellSide = 1.50 + ($quantitySold * 0.00005);
$buySide = 1.50 + ($quantityBought * 0.00005);
return ($quantityBought > 0 ? $buySide : 0) + ($quantitySold > 0 ? $sellSide : 0); |
Tiered Plans
Please noteImportant: 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.
...
No Format |
---|
return bcadd(computeTieredFee($quantity, $monthlyVolume, array( 1000000 => '0.001', '' => '0.00075'), false), 2); |
Different rate for Select Symbols Order Quantity Tiered Plan (Per Execution type)
...
Order)
This plan is designed to charge a fee based on the filled quantity of a single order and therefore does not reference the $monthlyVolume
variable.
No Format |
---|
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;
} |