Tableau des profits
CompteAuthentification requiseObtenez l’historique des profits et pertes des contrats clôturés. Le paramètre loginid et le champ app_id sont supprimés, et les valeurs de contract_type ont changé.
3 modifications incompatibles
loginid et le champ app_id sont supprimés, et le filtre contract_type accepte des valeurs différentes.Comparaison rapide
Modifications majeures
1. loginid paramètre supprimé
Dans l’API Legacy, loginid sélectionnait le compte lorsque vous autorisiez plusieurs comptes. La nouvelle API ne l’accepte pas.
Modification requise : Supprimez loginid de vos requêtes profit_table . Votre token sélectionne le compte.
2. app_id supprimé des transactions
La Legacy API renvoyait app_id, l’ID de l’application par laquelle le contrat a été acheté, pour chaque transaction. La New API ne le renvoie pas.
Modification requise : Cessez de lire app_id dans les transactions de la table des profits.
3. contract_type valeurs modifiées
Le filtre contract_type n’accepte plus CALLSPREAD, PUTSPREAD, LBFLOATCALL, LBFLOATPUT ni LBHIGHLOW, et ajoute HIGHER et LOWER.
Modification requise : Supprimez de contract_typeles valeurs que la nouvelle API n’accepte plus.
Structure de la demande
{
"profit_table": 1,
"contract_type": [
"CALL",
"CALLSPREAD"
],
"description": 1,
"limit": 25,
"loginid": "CR123456",
"req_id": 1
}{
"profit_table": 1,
"contract_type": [
"CALL",
"HIGHER"
],
"description": 1,
"limit": 25,
"req_id": 1
}Structure de réponse
{
"echo_req": {
"profit_table": 1,
"contract_type": [
"CALL",
"CALLSPREAD"
],
"description": 1,
"limit": 25,
"loginid": "CR123456",
"req_id": 1
},
"msg_type": "profit_table",
"profit_table": {
"count": 1,
"transactions": [
{
"buy_price": 10,
"contract_id": 11542203588,
"contract_type": "CALL",
"duration_type": "minutes",
"longcode": "Win payout if Volatility 100 Index is strictly higher than entry spot at 5 minutes after contract start time.",
"payout": 19.55,
"purchase_time": 1760000000,
"sell_price": 19.55,
"sell_time": 1760000300,
"shortcode": "CALL_R_100_19.55_1760000000_1760000300_S0P_0",
"transaction_id": 11542203587,
"underlying_symbol": "R_100",
"app_id": 1089
}
]
},
"req_id": 1
}{
"echo_req": {
"profit_table": 1,
"contract_type": [
"CALL",
"HIGHER"
],
"description": 1,
"limit": 25,
"req_id": 1
},
"msg_type": "profit_table",
"profit_table": {
"count": 1,
"transactions": [
{
"buy_price": 10,
"contract_id": 11542203588,
"contract_type": "CALL",
"duration_type": "minutes",
"longcode": "Win payout if Volatility 100 Index is strictly higher than entry spot at 5 minutes after contract start time.",
"payout": 19.55,
"purchase_time": 1760000000,
"sell_price": 19.55,
"sell_time": 1760000300,
"shortcode": "CALL_R_100_19.55_1760000000_1760000300_S0P_0",
"transaction_id": 11542203587,
"underlying_symbol": "R_100"
}
]
},
"req_id": 1
}Exemples de code
function getProfitTable(loginId) {
ws.send(JSON.stringify({ profit_table: 1, description: 1, limit: 25, loginid: loginId }));
ws.onmessage = (event) => {
const response = JSON.parse(event.data);
if (response.msg_type !== "profit_table") return;
if (response.profit_table) {
response.profit_table.transactions?.forEach((tx) => {
console.log(tx.contract_id, tx.sell_price - tx.buy_price, tx.app_id);
});
}
};
}D'autres questions ? Nous contacter