Comprar
TradingRequiere autenticaciónCompre un contrato. El parámetro loginid se eliminó, y varios campos en parameters cambiaron.
4 cambios importantes
loginid se eliminó, parameters.symbol ahora es parameters.underlying_symbol, se eliminaron cinco campos de parameters y los valores de contract_type cambiaron. Actualice sus solicitudes antes de migrar.Comparación rápida
Cambios importantes
1. loginid parámetro eliminado
El parámetro loginid ha sido eliminado en New. Este parámetro se utilizaba anteriormente para autenticación de múltiples cuentas.
Cambio obligatorio: Elimine el campo loginid de sus solicitudes de buy . La selección de cuenta ahora se gestiona mediante el token de autorización.
2. parameters.symbol renombrado a parameters.underlying_symbol
El campo symbol dentro de parameters ahora es underlying_symbol. La New API incluye underlying_symbol como obligatorio en parameters, por lo que falla una solicitud que aún envía parameters.symbol.
Cambio obligatorio: Cambie el nombre de parameters.symbol a parameters.underlying_symbol en sus solicitudes de buy .
3. Campos eliminados de parameters
Estos campos se eliminaron de parameters en la New API: barrier_range, date_start, product_type, trade_risk_profile y trading_period_start.
Cambio obligatorio: Elimine estos campos del objeto parameters en sus solicitudes de buy .
4. contract_type valores cambiados
La lista de parameters.contract_type ya no incluye CALLSPREAD, PUTSPREAD, LBFLOATCALL, LBFLOATPUT, LBHIGHLOW, SNOWUP ni SNOWDOWN. Agrega HIGHER y LOWER.
Cambio obligatorio: Deje de enviar los tipos de contrato eliminados. Use uno de los valores que incluye la New API.
Estructura de solicitud
{
"buy": "uw2mk7no3oktoRVVsB4Dz7TQnFfABuFDgO95dlxfMxRuPUsz",
"price": 10.50,
"loginid": "CR123456"
}{
"buy": "uw2mk7no3oktoRVVsB4Dz7TQnFfABuFDgO95dlxfMxRuPUsz",
"price": 10.50
}Estructura de respuesta
{
"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"
}Ejemplos 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);
}
}
};
}¿Alguna otra pregunta? Póngase en contacto