Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Wolverine, RBI and TDAmeritrade fee models charge no fees

Abierto Apto para principiantes
#9,953 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
85/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
csharp
Área
backend

Línea de trabajo

Abre Common/Orders/Fees/WolverineFeeModel.cs, RBIFeeModel.cs y TDAmeritradeFeeModel.cs y compara GetOrderFee con la firma base FeeModel.GetOrderFee para ver por qué los métodos ocultan en lugar de sobrescribir. Agrega override a cada uno, luego corrige el mensaje de tipo de valor no admitido en Common/Messages/Messages.Orders.Fees.cs para que imprima el valor en lugar de nameof(securityType). Compila y ejecuta las pruebas existentes del modelo de comisiones para confirmar los importes de $0.005/share y $0.65/contract y que las advertencias CS0114 hayan desaparecido.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Expected Behavior

Orders placed with WolverineBrokerageModel or RBIBrokerageModel are charged $0.005 per share by default, and option orders placed with TDAmeritradeBrokerageModel are charged $0.65 per contract, as WolverineFeeModel, RBIFeeModel and TDAmeritradeFeeModel describe.

Actual Behavior

Every order is charged 0 USD. The three fee models declare GetOrderFee without the override keyword, so they hide FeeModel.GetOrderFee instead of overriding it (compiler warning CS0114). Lean calls fee models through IFeeModel, which dispatches to the base FeeModel.GetOrderFee and returns 0 USD.

Potential Solution

Add override to GetOrderFee in Common/Orders/Fees/WolverineFeeModel.cs, RBIFeeModel.cs and TDAmeritradeFeeModel.cs. The TDAmeritrade unsupported security type message in Common/Messages/Messages.Orders.Fees.cs also prints nameof(securityType) instead of the value.

Reproducing the Problem
var security = /* SPY equity security */;
var order = new MarketOrder(security.Symbol, 1000, DateTime.UtcNow);
IFeeModel feeModel = new WolverineBrokerageModel().GetFeeModel(security);
var fee = feeModel.GetOrderFee(new OrderFeeParameters(security, order));
// fee.Value.Amount is 0, expected 5 (1000 shares x $0.005)

The same happens with RBIBrokerageModel (expected 5) and with TDAmeritradeBrokerageModel for 10 option contracts (expected 6.5).

System Information

Ubuntu x86_64, .NET SDK 10.0.403, master at 22404ea28b8d3f3c9eb74d6ed9f0444426f8e417.

Checklist
  • I have completely filled out this template
  • I have confirmed that this issue exists on the current master branch
  • I have confirmed that this is not a duplicate issue by searching issues
  • I have provided detailed steps to reproduce the issue
Lenguaje dominante
C#
Estrellas
22.3k
Forks
5.4k
Merge medio
1 d 11 h
PR fusionados (30 d)
58

Preparar el entorno

Abrir en Codespaces

Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de QuantConnect/Lean

Todos los issues de QuantConnect/Lean

Issues similares

Más issues de C#

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.