You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Describe the bug
The price/secondaryPrice can only be passed as decimal, but Kraken requires a prefix in the price field input for Trailing Stop/Trailing Stop Limit orders, which is optional for other order types. Although the Trailing Stop/Trailing Stop Limit orders are supported, there is no no option to set a prefix.
To Reproduce
Place an Order of type TrailingStop or TrailingStopLimit, e.g.
var order = await _krakenRestClient.SpotApi.Trading.PlaceOrderAsync(
symbol: "XETHZEUR",
type: OrderType.TrailingStopLimit,
side: OrderSide.Buy,
quantity: 0.04,
price: 24.78, // Trailing offset, Kraken expects the "+" or "%" prefix
secondaryPrice: 23.544 // Trailing Limit order offset, Kraken expects the "+" or "%" prefix
);
Trailing Stops: Must use a relative price for this field, namely the + prefix, from which the direction will be automatic based on if the original order is a buy or sell (no need to use - or #). The % suffix also works for these order types to use a relative percentage price.
The text was updated successfully, but these errors were encountered:
Hi, you're right. It a bit of a pain as I'd like to take the price field types a decimal type, but then you can't specify the '+' or '%' signs as you found.
In the latest version I've added the pricePrefixOperator, priceSuffixOperator, secondaryPricePrefixOperator and secondaryPriceSuffixOperator parameters to PlaceOrderAsync so you can specify them manually as sort of a workaround.
Describe the bug
The price/secondaryPrice can only be passed as decimal, but Kraken requires a prefix in the price field input for Trailing Stop/Trailing Stop Limit orders, which is optional for other order types. Although the Trailing Stop/Trailing Stop Limit orders are supported, there is no no option to set a prefix.
To Reproduce
Place an Order of type TrailingStop or TrailingStopLimit, e.g.
var order = await _krakenRestClient.SpotApi.Trading.PlaceOrderAsync(
symbol: "XETHZEUR",
type: OrderType.TrailingStopLimit,
side: OrderSide.Buy,
quantity: 0.04,
price: 24.78, // Trailing offset, Kraken expects the "+" or "%" prefix
secondaryPrice: 23.544 // Trailing Limit order offset, Kraken expects the "+" or "%" prefix
);
Expected behavior
The Order can be placed.
Debug logging
Request Body: nonce=638602247173715770&ordertype=trailing-stop-limit&pair=ETH%2fEUR&price=24.78&price2=23.544&trading_agreement=agree&type=buy&volume=0.04
ErrorMessage: EGeneral:Invalid arguments:price
According to https://docs.kraken.com/rest/#tag/Spot-Trading/operation/addOrder:
Trailing Stops: Must use a relative price for this field, namely the + prefix, from which the direction will be automatic based on if the original order is a buy or sell (no need to use - or #). The % suffix also works for these order types to use a relative percentage price.
The text was updated successfully, but these errors were encountered: