Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

$0.50/1000 (Per Execution or Per Order)

nopanel
No Format
true
$quantity * 0.0005;

$0.50/1000 (Fee Rules)

No Format
=> 0.50


$0.50 / 1000, $1 minimum per ticket (Per Execution or Per Order)

true
No Format
nopanel
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)

nopanel
No Format
true
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)

nopanel
No Format
true
max(1, min(10, $quantity * 0.0005));


$1 per execution or order (Per Execution or Per Order)

No Format
nopaneltrue
return 1;

$2.95 per ticket (Per Order$1 per fill (Fee Rules)

No Format
nopaneltrue
return 2.95;=> [1]


$0.50 / 1000 Equities, 1.65 / contract options, 1.00 / futures contract (Per Execution or Per Order)

true
No Format
nopanel
$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
nopaneltrue
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
nopaneltrue
$sellSide = 1.50 + ($quantitySold * 0.00005);
$buySide = 1.50 + ($quantityBought * 0.00005);
return ($quantityBought > 0 ? $buySide : 0) + ($quantitySold > 0 ? $sellSide : 0);

Tiered Plans

(warning) 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.

...

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.

No Format
nopaneltrue
return computeTieredFee($quantity, $monthlyVolume, array(
    500000 => '0.0015',
    1000000 => '0.001',
    '' => '0.0006'), false);

...

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.

true
No Format
nopanel
return computeTieredFee($quantity, $monthlyVolume, array(
    500000 => '0.0015',
    1000000 => '0.001',
    '' => '0.0006'), true);

Non-Regressive Tiered Plan (Per Order w/ $2 tkt)

nopanel
No Format
true
return bcadd(computeTieredFee($quantity, $monthlyVolume, array(
    1000000 => '0.001',
    '' => '0.00075'), false), 2);

 Tiered Plan - calculated on Order Qty Order Quantity Tiered Plan (Per Order)

...

nopaneltrue

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;
}

...