Como é que eu devo depurar este problema? Use o código abaixo para obter informações sobre posições se a conta não tiver posições enquanto (true) { Var position=_C (exchange.GetPosition)
se ((position==null) {
Continuar
Não.
type=position[0].Type
se (type ==PD_LONG) {
Se você quiser, você pode fazer isso. Se você quiser, você pode fazer isso.
Cancel Pending Orders (Cancelar ordens pendentes)
exchange.SetDirection (em inglês)
exchange.Sell (sellPrice,position[0].Amount)
Exsell=SellPrice
Não.
Não.
Quando a conta não tem posição, o getposition deve ser obtido como uma matriz em branco, então executar o contínuo dentro da expressão if para reiniciar o ciclo, mas o teste de disco real ainda dá um erro.
TypeError: can't read property
Tentei alterar as condições do if, como position[0]==null ou typeof ((position) ==undefined, mas não funcionaram ou executaram o comando type=position[0].
Como resolver esse problema?
XionglonghuiA solução é a seguinte: Var position = _C (exchange.GetPosition); If (position.length > 0) - Não. // Por favor, coloque o código dentro deste grande parêntese. O princípio é o seguinte: primeiro, determine o comprimento da matriz que a função de armazenamento retorna, e o comprimento é maior que 0, o que significa que há informações de armazenamento, não é possível determinar diretamente com null, undefine. Depois, você pode acessar position[0] Não.
YumountO problema é o mesmo, senti a necessidade de configurar uma função tolerante a erros separadamente para o exchange.GetPosition, caso contrário, essa função é quase totalmente inutilizável sem armazenamento. A propósito, pergunte ao proprietário como foi a solução final.
Inventor quantificado - sonho pequenoDepois de ler o post, descobri o problema, quando você chama exchange.GetPosition (() se você não tem um armazém, ele retornará [], um armazém vazio, que não é igual a null, é sua decisão. Quando a posição == null, é falsa, por isso não é desencadeada a continuação, então você acessa a posição[0] Este elemento não existe, por isso é indefinido, e a chamada de sua propriedade Type dá um erro.