Summary: This commission script calculates the commission paid for an executed stock, futures or forex order, determined by a constant amount in addition to a variable amount based on the order quantity.
' Assign the parameters to script variables. _commissionPerStockOrder = commissionPerStockOrder _commissionPerStockShare = commissionPerStockShare _commissionPerFuturesOrder = commissionPerFuturesOrder _commissionPerFuturesContract = commissionPerFuturesContract _commissionPerForexOrder = commissionPerForexOrder _commissionPerForexUnit = commissionPerForexUnit
If (orderFillIndex = 0) Then ' Return the commission being paid for the executed order. If (SymbolInstrument(OrderSymbolIndex(orderIndex)) = C_STOCK) Then Return _commissionPerStockOrder + (_commissionPerStockShare * quantity) End If If (SymbolInstrument(OrderSymbolIndex(orderIndex)) = C_FUTURES) Then Return _commissionPerFuturesOrder + (_commissionPerFuturesContract * quantity) End If If (SymbolInstrument(OrderSymbolIndex(orderIndex)) = C_FOREX) Then Return _commissionPerForexOrder + (_commissionPerForexUnit * quantity) End If Else ' Return the commission being paid for the executed order. If (SymbolInstrument(OrderSymbolIndex(orderIndex)) = C_STOCK) Then Return _commissionPerStockShare * quantity End If If (SymbolInstrument(OrderSymbolIndex(orderIndex)) = C_FUTURES) Then Return _commissionPerFuturesContract * quantity End If If (SymbolInstrument(OrderSymbolIndex(orderIndex)) = C_FOREX) Then Return _commissionPerForexUnit * quantity End If End If Return 0