Proposition de contrat ouvert
TradingAuthentification requiseObtenir les détails d'un contrat ouvert. Le paramètre loginid supprimé, types de champs de réponse modifiés, et plusieurs champs d'affichage supprimés.
8 changements incompatibles
loginid a été supprimé, plusieurs champs de réponse ont été modifiés en string | number, et plusieurs champs d'affichage ont été supprimés.Comparaison rapide
Modifications majeures
1. Paramètre loginid supprimé
Le paramètre loginid a été retiré du schéma de requête.
2. Types de champs de réponse modifiés
Plusieurs champs numériques renvoient désormais string | number au lieu de seulement number:
bid_price,buy_price,current_spot,profit:string | numberpayout:string(toujours string maintenant)
3. Champs obligatoires dans la réponse
L'objet de réponse proposal_open_contract a désormais des champs requis : contract_id, contract_type, et currency.
4. Champs d'affichage supprimés
Plusieurs champs spécifiques à l'affichage ont été supprimés : display_value, exit_tick_display_value, et sell_spot_display_value.
5. Champs obsolètes
Les champs sell_spot et sell_spot_time sont obsolètes. Migrez vers exit_spot et exit_spot_time.
6. Champ is_forward_starting supprimé
L'indicateur booléen is_forward_starting a été supprimé.
7. Champs de contrat Snowball supprimés
Les champs spécifiques au contrat Snowball ont été supprimés : caution_price, profit_price, coupon_rate, etc.
Structure de la demande
{
"proposal_open_contract": 1,
"contract_id": 123456789,
"subscribe": 1,
"loginid": "CR90000001"
}{
"proposal_open_contract": 1,
"contract_id": 123456789,
"subscribe": 1
}Structure de réponse
{
"proposal_open_contract": {
"contract_id": 123456789,
"buy_price": 10.50,
"display_value": "15.50",
"payout": 20.00,
"sell_spot": 1.0852
},
"msg_type": "proposal_open_contract"
}{
"proposal_open_contract": {
"contract_id": 123456789,
"buy_price": "10.50",
"payout": "20.00",
"exit_spot": "1.0852",
"exit_spot_time": 1446629000
},
"msg_type": "proposal_open_contract"
}Exemples de code
async function getOpenContract(contractId, loginId) {
const request = {
proposal_open_contract: 1,
contract_id: contractId,
subscribe: 1,
loginid: loginId
};
ws.send(JSON.stringify(request));
ws.onmessage = (event) => {
const response = JSON.parse(event.data);
if (response.msg_type === "proposal_open_contract") {
const contract = response.proposal_open_contract;
const profit = contract.profit;
const displayValue = contract.display_value;
}
};
}D'autres questions ? Nous contacter