Lean  $LEAN_TAG$
QuantConnect.Brokerages.KrakenBrokerageModel Class Reference

Kraken Brokerage model More...

Inheritance diagram for QuantConnect.Brokerages.KrakenBrokerageModel:
[legend]

Public Member Functions

 KrakenBrokerageModel (AccountType accountType=AccountType.Cash)
 Constructor for Kraken brokerage model More...
 
override bool CanSubmitOrder (Security security, Order order, out BrokerageMessageEvent message)
 Returns true if the brokerage could accept this order. This takes into account order type, security type, and order size limits. More...
 
override bool CanUpdateOrder (Security security, Order order, UpdateOrderRequest request, out BrokerageMessageEvent message)
 Kraken does not support update of orders More...
 
override IFeeModel GetFeeModel (Security security)
 Provides Kraken fee model More...
 
override decimal GetLeverage (Security security)
 Kraken global leverage rule More...
 
override IBenchmark GetBenchmark (SecurityManager securities)
 Get the benchmark for this model More...
 
- Public Member Functions inherited from QuantConnect.Brokerages.DefaultBrokerageModel
 DefaultBrokerageModel (AccountType accountType=AccountType.Margin)
 Initializes a new instance of the DefaultBrokerageModel class More...
 
virtual bool CanExecuteOrder (Security security, Order order)
 Returns true if the brokerage would be able to execute this order at this time assuming market prices are sufficient for the fill to take place. This is used to emulate the brokerage fills in backtesting and paper trading. For example some brokerages may not perform executions during extended market hours. This is not intended to be checking whether or not the exchange is open, that is handled in the Security.Exchange property. More...
 
virtual void ApplySplit (List< OrderTicket > tickets, Split split)
 Applies the split to the specified order ticket More...
 
virtual IFillModel GetFillModel (Security security)
 Gets a new fill model that represents this brokerage's fill behavior More...
 
virtual ISlippageModel GetSlippageModel (Security security)
 Gets a new slippage model that represents this brokerage's fill slippage behavior More...
 
virtual ISettlementModel GetSettlementModel (Security security)
 Gets a new settlement model for the security More...
 
ISettlementModel GetSettlementModel (Security security, AccountType accountType)
 Gets a new settlement model for the security More...
 
virtual IBuyingPowerModel GetBuyingPowerModel (Security security)
 Gets a new buying power model for the security, returning the default model with the security's configured leverage. For cash accounts, leverage = 1 is used. More...
 
virtual IShortableProvider GetShortableProvider (Security security)
 Gets the shortable provider More...
 
virtual IMarginInterestRateModel GetMarginInterestRateModel (Security security)
 Gets a new margin interest rate model for the security More...
 
IBuyingPowerModel GetBuyingPowerModel (Security security, AccountType accountType)
 Gets a new buying power model for the security More...
 

Properties

override IReadOnlyDictionary< SecurityType, string > DefaultMarkets = GetDefaultMarkets() [get]
 Gets a map of the default markets to be used for each security type More...
 
IReadOnlyDictionary< string, decimal > CoinLeverage [get]
 Leverage map of different coins More...
 
- Properties inherited from QuantConnect.Brokerages.DefaultBrokerageModel
virtual AccountType AccountType [get]
 Gets or sets the account type used by this model More...
 
virtual IReadOnlyDictionary< SecurityType, string > DefaultMarkets [get]
 Gets a map of the default markets to be used for each security type More...
 
- Properties inherited from QuantConnect.Brokerages.IBrokerageModel
AccountType AccountType [get]
 Gets the account type used by this model More...
 
decimal RequiredFreeBuyingPowerPercent [get]
 Gets the brokerages model percentage factor used to determine the required unused buying power for the account. From 1 to 0. Example: 0 means no unused buying power is required. 0.5 means 50% of the buying power should be left unused. More...
 
IReadOnlyDictionary< SecurityType, string > DefaultMarkets [get]
 Gets a map of the default markets to be used for each security type More...
 

Additional Inherited Members

- Static Public Member Functions inherited from QuantConnect.Brokerages.DefaultBrokerageModel
static bool IsValidOrderSize (Security security, decimal orderQuantity, out BrokerageMessageEvent message)
 Checks if the order quantity is valid, it means, the order size is bigger than the minimum size allowed More...
 
- Public Attributes inherited from QuantConnect.Brokerages.DefaultBrokerageModel
virtual decimal RequiredFreeBuyingPowerPercent => 0m
 Gets the brokerages model percentage factor used to determine the required unused buying power for the account. From 1 to 0. Example: 0 means no unused buying power is required. 0.5 means 50% of the buying power should be left unused. More...
 
- Static Public Attributes inherited from QuantConnect.Brokerages.DefaultBrokerageModel
static readonly IReadOnlyDictionary< SecurityType, string > DefaultMarketMap
 The default markets for the backtesting brokerage More...
 

Detailed Description

Kraken Brokerage model

Definition at line 30 of file KrakenBrokerageModel.cs.

Constructor & Destructor Documentation

◆ KrakenBrokerageModel()

QuantConnect.Brokerages.KrakenBrokerageModel.KrakenBrokerageModel ( AccountType  accountType = AccountType.Cash)

Constructor for Kraken brokerage model

Parameters
accountTypeCash or Margin

Definition at line 76 of file KrakenBrokerageModel.cs.

Member Function Documentation

◆ CanSubmitOrder()

override bool QuantConnect.Brokerages.KrakenBrokerageModel.CanSubmitOrder ( Security  security,
Order  order,
out BrokerageMessageEvent  message 
)
virtual

Returns true if the brokerage could accept this order. This takes into account order type, security type, and order size limits.

For example, a brokerage may have no connectivity at certain times, or an order rate/size limit

Parameters
securityThe security of the order
orderThe order to be processed
messageIf this function returns false, a brokerage message detailing why the order may not be submitted
Returns
True if the brokerage could process the order, false otherwise

Reimplemented from QuantConnect.Brokerages.DefaultBrokerageModel.

Definition at line 92 of file KrakenBrokerageModel.cs.

Here is the call graph for this function:

◆ CanUpdateOrder()

override bool QuantConnect.Brokerages.KrakenBrokerageModel.CanUpdateOrder ( Security  security,
Order  order,
UpdateOrderRequest  request,
out BrokerageMessageEvent  message 
)
virtual

Kraken does not support update of orders

Parameters
securitySecurity
orderOrder that should be updated
requestUpdate request
messageOutgoing message
Returns
Always false as Kraken does not support update of orders

Reimplemented from QuantConnect.Brokerages.DefaultBrokerageModel.

Definition at line 127 of file KrakenBrokerageModel.cs.

◆ GetFeeModel()

override IFeeModel QuantConnect.Brokerages.KrakenBrokerageModel.GetFeeModel ( Security  security)
virtual

Provides Kraken fee model

Parameters
securitySecurity
Returns
Kraken fee model

Reimplemented from QuantConnect.Brokerages.DefaultBrokerageModel.

Definition at line 138 of file KrakenBrokerageModel.cs.

◆ GetLeverage()

override decimal QuantConnect.Brokerages.KrakenBrokerageModel.GetLeverage ( Security  security)
virtual

Kraken global leverage rule

Parameters
security
Returns

Reimplemented from QuantConnect.Brokerages.DefaultBrokerageModel.

Definition at line 148 of file KrakenBrokerageModel.cs.

◆ GetBenchmark()

override IBenchmark QuantConnect.Brokerages.KrakenBrokerageModel.GetBenchmark ( SecurityManager  securities)
virtual

Get the benchmark for this model

Parameters
securitiesSecurityService to create the security with if needed
Returns
The benchmark for this brokerage

Reimplemented from QuantConnect.Brokerages.DefaultBrokerageModel.

Definition at line 184 of file KrakenBrokerageModel.cs.

Here is the call graph for this function:

Property Documentation

◆ DefaultMarkets

override IReadOnlyDictionary<SecurityType, string> QuantConnect.Brokerages.KrakenBrokerageModel.DefaultMarkets = GetDefaultMarkets()
get

Gets a map of the default markets to be used for each security type

Definition at line 48 of file KrakenBrokerageModel.cs.

◆ CoinLeverage

IReadOnlyDictionary<string, decimal> QuantConnect.Brokerages.KrakenBrokerageModel.CoinLeverage
get
Initial value:
= new Dictionary<string, decimal>
{
{"BTC", 5},
{"ETH", 5},
{"USDT", 2},
{"XMR", 2},
{"REP", 2},
{"XRP", 3},
{"BCH", 2},
{"XTZ", 2},
{"LTC", 3},
{"ADA", 3},
{"EOS", 3},
{"DASH", 3},
{"TRX", 3},
{"LINK", 3},
{"USDC", 3},
}

Leverage map of different coins

Definition at line 53 of file KrakenBrokerageModel.cs.


The documentation for this class was generated from the following file: