Deriv API
Documentação

Proposta de contrato aberto

NegociaçãoAutenticação Obrigatória

Obtenha detalhes de contratos abertos. O parâmetro loginid foi removido, os tipos de campos de resposta foram alterados e vários campos de exibição foram removidos.

Comparação rápida

AspetoLegacy APINew APIAção
Endpointproposal_open_contractproposal_open_contractNenhum
Parâmetro loginidOpcionalRemovidoRemover dos pedidos
Campos Obrigatórios da RespostaApenas echo_reqcontract_id, contract_type, currencyAtualizar expectativas de tipo

Alterações de rutura

1. Parâmetro loginid removido

O parâmetro loginid foi removido do esquema de pedido.

2. Tipos de campo de resposta alterados

Vários campos numéricos devolvem agora string | number em vez de apenas number:

  • bid_price, buy_price, current_spot, profit: string | number
  • payout: string (sempre string agora)

3. Campos obrigatórios na resposta

O objeto de resposta proposal_open_contract tem agora campos obrigatórios: contract_id, contract_type, e currency.

4. Campos de visualização removidos

Vários campos específicos de apresentação foram removidos: display_value, exit_tick_display_value, e sell_spot_display_value.

5. Campos obsoletos

Os campos sell_spot e sell_spot_time estão obsoletos. Migre para exit_spot e exit_spot_time.

6. Campo is_forward_starting removido

A flag booleana is_forward_starting foi removida.

7. Campos de contrato Snowball removidos

Os campos específicos do contrato Snowball foram removidos: caution_price, profit_price, coupon_rate, etc.

Estrutura de pedido

Legacy APIexemplo de pedido
{
  "proposal_open_contract": 1,
  "contract_id": 123456789,
  "subscribe": 1,
  "loginid": "CR90000001"
}
New APIexemplo de pedido
{
  "proposal_open_contract": 1,
  "contract_id": 123456789,
  "subscribe": 1
}

Estrutura de resposta

Legacy APIexemplo de resposta
{
  "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"
}
New APIexemplo de resposta
{
  "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"
}

Exemplos de código

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;
    }
  };
}

Alguma outra questão? Entrar em contacto

Click to open live chat support. Get instant help from our support team.