Comprar
NegociaçãoAutenticação ObrigatóriaCompre um contrato. O parâmetro loginid foi removido, e vários campos em parameters foram alterados.
4 Alterações de Rutura
loginid foi removido, parameters.symbol é agora parameters.underlying_symbol, cinco campos de parameters foram removidos e os valores de contract_type foram alterados. Atualize os seus pedidos antes de migrar.Comparação rápida
Alterações de rutura
1. loginid parâmetro removido
O parâmetro loginid foi removido em New. Este parâmetro era anteriormente usado para autenticação multi-conta.
Alteração necessária: Remova o campo loginid dos seus pedidos de buy . A seleção da conta é agora efetuada através do token de autorização.
2. parameters.symbol renomeado para parameters.underlying_symbol
O campo symbol em parameters é agora underlying_symbol. A Nova API indica underlying_symbol como obrigatório em parameters, pelo que um pedido que continue a enviar parameters.symbol falha.
Alteração necessária: Renomeie parameters.symbol para parameters.underlying_symbol nos seus pedidos buy .
3. Campos removidos de parameters
Estes campos foram removidos de parameters na Nova API: barrier_range, date_start, product_type, trade_risk_profile e trading_period_start.
Alteração necessária: Remova estes campos do objeto parameters nos seus pedidos buy .
4. contract_type valores alterados
A lista de parameters.contract_type deixou de incluir CALLSPREAD, PUTSPREAD, LBFLOATCALL, LBFLOATPUT, LBHIGHLOW, SNOWUP ou SNOWDOWN. Adiciona HIGHER e LOWER.
Alteração necessária: Deixe de enviar os tipos de contrato removidos. Utilize antes um dos valores indicados pela Nova API.
Estrutura de pedido
{
"buy": "uw2mk7no3oktoRVVsB4Dz7TQnFfABuFDgO95dlxfMxRuPUsz",
"price": 10.50,
"loginid": "CR123456"
}{
"buy": "uw2mk7no3oktoRVVsB4Dz7TQnFfABuFDgO95dlxfMxRuPUsz",
"price": 10.50
}Estrutura de resposta
{
"buy": {
"balance_after": 9989.50,
"buy_price": 10.50,
"contract_id": 123456789,
"longcode": "Win payout if Volatility 100 Index is strictly higher than entry spot at 5 minutes after contract start time.",
"payout": 20.00,
"purchase_time": 1234567890,
"shortcode": "CALL_R_100_20_1234567890_1234568190_S0P_0",
"start_time": 1234567890,
"transaction_id": 987654321
},
"echo_req": { "buy": "uw2mk7no3oktoRVVsB4Dz7TQnFfABuFDgO95dlxfMxRuPUsz", "price": 10.50 },
"msg_type": "buy"
}{
"buy": {
"balance_after": 9989.50,
"buy_price": 10.50,
"contract_id": 123456789,
"longcode": "Win payout if Volatility 100 Index is strictly higher than entry spot at 5 minutes after contract start time.",
"payout": 20.00,
"purchase_time": 1234567890,
"shortcode": "CALL_R_100_20_1234567890_1234568190_S0P_0",
"start_time": 1234567890,
"transaction_id": 987654321
},
"echo_req": { "buy": "uw2mk7no3oktoRVVsB4Dz7TQnFfABuFDgO95dlxfMxRuPUsz", "price": 10.50 },
"msg_type": "buy"
}Exemplos de código
async function buyContract(proposalId, price, loginid) {
const request = {
buy: proposalId,
price: price,
// loginid used for multi-account support
loginid: loginid
};
ws.send(JSON.stringify(request));
ws.onmessage = (event) => {
const response = JSON.parse(event.data);
if (response.msg_type === "buy") {
// buy object may be missing in some cases
if (response.buy) {
console.log("Contract ID:", response.buy.contract_id);
}
}
};
}Alguma outra questão? Entrar em contacto