Resumen de preguntas frecuentes (actualizado continuamente...)
-
¿Cómo buscar palabras clave en las publicaciones?
usarCtrl + fEl botón abre la búsqueda de páginas, escribe una palabra clave, por ejemplo: <unk> 托管者 <unk>. Entonces la búsqueda en la página sobre la ubicación de los caracteres de los administradores se hará. -
En la actualidad, las estaciones internacionales de la FMZ solo admiten operaciones de monedas digitales.
-
¿Qué es lo que está pasando?
Interfaz de las API
-
¿Por qué?
GetTickeryGetDepthLo tienes.Comprar a un precioySe vende por un precio.¿Qué podría haber cambiado?GetTickeryGetDepthEs posible que no se obtienen simultáneamente. Hay un cierto retraso, hay cambios en los datos. Y en general es posibleGetTickerLos datos son un poco más rápidos porque son menos numerosos. -
exchang.GetOrdersSi no se obtiene la tarjeta de presentación, ¿dónde se obtiene la tarjeta de presentación?También hay una API para pedidos de búsqueda:
exchange.GetOrderEsto es basado enIDConsultar todos los tipos de pedidos. Introducir pedidosIDEncuentra esta orden. Obtenga la orden de transacción solo si todas las transacciones no ofrecen esta interfaz, y cada intercambio puede ofrecer una interfaz diferente. -
JavaScriptEl resultado de la secuencia de caracteres de tiempo de la estrategia para girar la barra de tiempo no es correctoHay que tener en cuenta la zona horaria en la configuración de la hora del sistema.
-
¿Por qué imprimo el mismo precio de apertura y cierre?
- Puede ser que la bolsa no esté operando en este momento, ya que el BAR está en alza y baja.
- Observa si el BAR es el último que se observa, y en el momento en que se genera el BAR, el alza-baja es el mismo.
-
Signature not valid:Invalid submission time or incorrect time format[无效的提交时间,或时间格式错误]Los errores de corrección de tiempo de este tipo y del servidorLa pregunta es:
windows2000/2003/XPEn cuanto a los problemas con los sistemas operativos más antiguos, los datos son:Recomendado
LinuxServidores, o en los que surge el problemawindowsEl sistema instala el software de sincronización de tiempo, sincronización de alta frecuencia, para evitar errores de verificación de tiempo. -
¿Por qué la lengua de Mac?
ATR(TRLos valores calculados yTA/talib¿Hay alguna diferencia en el cálculo de la base de datos?La razón es el modo en que se calcula el índice de lenguaje de Mac y
TA/talibLos algoritmos de la base de datos no son consistentes. Ambos son correctos, el algoritmo es diferente.MACDAlgunos usan el doble.DIF-DEAAlgunos lo hacen dos veces.DIF-DEANo es un problema, es un problema. -
El nombre de la bolsa es
Futures_Esunny¿Qué es lo que representan?El representanteAcuerdo de EschenLos objetos de intercambio, que pueden
exchange.GetName()La función vuelve.
En la actualidad, las estaciones internacionales de la FMZ solo admiten operaciones de monedas digitales. -
En el lenguaje Mac, los datos son citados en bloques de código de referencia múltiple.
#EXPORTTEST...#ENDUna vez declarada la variable, se utiliza cuando se hace referencia a ella en la estrategia.REFEn la actualidad, la mayoría de los países de la Unión Europea (UE) no tienen un sistema de datos de referencia para los ciclos, y por lo tanto, los datos se basan en el ciclo actual.Todos los datos multicíclicos que se necesitan están en
#EXPORTTEST...#ENDSe trata de un producto que debe ser tratado con cuidado en el interior y que sólo se puede utilizar directamente en el exterior. -
No hay documentación de la API de FMZ
Se puede ingresar directamente la dirección de la página: https://www.fmz.com/api, o hacer clic en el siguiente enlace:
-
¿Por qué?
MACD¿Es el mismo valor que se calcula en la bolsa?La comparación requiere la atención de si la línea K tiene un ciclo consistente.
MACDSi los parámetros indicadores son consistentes, el período de tiempo es el mismo, la variedad es la misma, ademásMACDHay varios tipos de algoritmos de columnas cuantitativas.DIF-DEAHay algo.2*(DIF-DEA),DIFyDEADebería ser coherente. -
¿Cuál es la relación entre el número de líneas K obtenidas y el número de líneas K históricas obtenidas?
En el viaje
exchange.GetRecordsCuando el interfaz obtiene datos de la línea K, la cantidad de líneas K que se devuelven a la interfaz específica es determinada por la bolsa. Es posible que la cantidad de líneas K que se devuelven a cada bolsa no sea uniforme. Incluso algunos intercambios no ofrecen interfaces de líneas K, en tales casos, los administradores llaman a la estrategiaexchange.GetRecordsCuando se llama a la interfaz para obtener datos de historial de transacciones de la bolsa, se sintetizan las líneas K según la historia de transacciones. Las líneas K recibidas por el administrador se acumulan continuamente y requieren una cierta frecuencia de visitas.exchange.GetRecordsInterfaz, de lo contrario puede afectar la continuidad de los datos. -
Veo la documentación de la API.
exchange.BuyLa función sólo regresaráID¿Cómo es que regresan tantos mensajes?La función API de FMZ puede generar una salida de registro como
Log、exchange.Buy、exchange.CancelOrderSe pueden incluir otros parámetros de salida adicionales después de los parámetros necesarios. Por ejemplo:exchange.CancelOrder(orders[i].Id, orders[j])Así es como se cancela.orders[j]Cuando se hace este pedido, se incluye la información de este pedido. -
¿Cómo envía WeChat en vivo?
En realidad, sólo funciona en el disco duro.
LogLa función agrega un carácter al final'@'El artículo puede ser enviadoLogPara más información sobre la impresión de la función, consulte el documento de la API: https://www.fmz.com/api#Log
En la actualidad, las estaciones internacionales de la FMZ solo admiten operaciones de monedas digitales. -
exchange.GetAccount¿La falta de acceso a la información se debe a problemas de la red o a otros problemas? ¿El sistema de FMZ ya tiene un sistema de gestión de fallas? ¿O el usuario tiene que manejar el fallo de la solicitud por sí mismo? ¿Por qué no lo hace el oficial? ¿No sería más conveniente para el usuario?Habrá fallas que requerirán un procesamiento tolerante por parte del usuario. La base de la FMZ no procesará los datos, y la retroalimentación al usuario será de datos sin procesar, y el método o lógica de tolerancia por parte del usuario será desarrollado por la estrategia. Si esto se procesa, puede afectar la decisión del usuario, la decisión será entregada al procesamiento de la estrategia, concretamente:Filtración de mensajes falsos¿O tambiénIntento de nuevo.¿Cómo se trata el tema?
-
¿Cuál es la unidad de unidad de un contrato OKEX? ¿el número de monedas o el número de tiras del contrato?
La cantidad de un contrato OKEX que se negocia en un FMZ es por el número de tiradas del contrato, por ejemplo:
exchange.Buy(1000,1)Es decir, un pedido de un contrato por un precio de 1000. -
Llamado en FMZ
exchange.Sellyexchange.Buy¿Es la lista de precios límite?En concreto, mira el primer parámetro de la transmisión ((el primer parámetro es el precio de pedido). Algunas bolsas apoyan el precio de mercado, el parámetro de precio de transmisión
-1Es decir, el precio de venta al por menor, el volumen de compra y venta tienen un significado diferente (el segundo parámetro), el precio no es el precio de venta.-1Es decir, el precio límite. En la mayoría de las plataformas de intercambio de bienes en efectivo, el precio de mercado es el precio de compra.CantidadNo es así.Número de monedas。 La interfaz de pedido de las bolsas de futuros de divisas digitales, la cantidad de pedidos generalmente es un número entero para el número de hojas de contrato。
Ver la siguiente interfaz:
https://www.fmz.com/api#exchange.buyprice-amount
https://www.fmz.com/api#exchange.sellprice-amount -
Función de correo
Mail("smtp.qq.com", "[email protected]", "xxx", "[email protected]", "test title", "test body")La mayoría de los servidores en la nube también pueden solicitar el desbloqueo del puerto 25, que es lo que solicito y desbloqueo.
-
Parámetros de la plantilla para las lenguas Pine y Mac: el número de ciclos más largos de las variables afecta el cálculo del indicador
Por defecto, el "número de ciclos más largos de variables" es 600, si el parámetro indicador se configura demasiado grande, por ejemplo, para calcular MA ((1000) ∞, no se puede calcular el promedio de 1000 datos, ya que el sistema solo conserva 600 datos.
Reportar un error
-
InternalError: arg1 type error
La escena que desencadenó el ataque:javascriptfunction main() { _G(11212, "123") }_GEl nombre de la clave de la función no puede ser del tipo valor numérico ≠ -
Error de llamada recursiva infinita: signal arrived during external code execution
Juzgado por la característica: Excepción 0xc00000fd
runException 0xc00000fd 0x1 0x5cdd203f40 0x1ee5955 PC=0x1ee5955 signal arrived during external code execution -
Las páginas de disco duro pueden tener información de salida de la consola (errores en el tiempo de ejecución), como un ejemplo que provoca un desbordamiento de memoria:
pythondef create_large_list(): large_list = [] while True: large_list.append(" " * 1024) # Append a string of 1024 bytes to the list print(f"Current list size: {len(large_list)}") def main(): create_large_list() -
Casilla de error, mensaje de error:
Compruebe si el código de la política de la zona de edición de error, compruebe si var name = "a" se olvida de escribir el nombre (sin escribir el nombre de la variable). Compruebe si se utiliza la clave de la lengua de programación para la configuración de la política de interfaz de parámetros, no se recomienda el uso de la clave de la lengua de programación común para el nombre de la variable, que puede causar conflictos (incluso si no hay esta clave en el lenguaje de programación actual).
-
BITMEX429 errores, y el número de personas que se equivocan.{"error":{"message":"Rate limit exceeded retry in 1seconds……"}}Error 429, que indica que hay demasiada frecuencia de acceso a la interfaz de intercambio. Es necesario aumentar el intervalo de consulta y reducir la frecuencia de acceso a la interfaz.
-
Oferta firme
BittrexSe ha perdido:{"success":false,"message":"NOT_ALLOWED","result":null}El intercambio tiene permisos restringidos, ingrese
BittrexEn el sitio web de la bolsa, vea si es necesario seleccionar el acuerdo de usuario, etc. -
Notificación de errores en el disco duro:
TypeError:value has no property atLa detección no es lo mismo que el mensaje de error en tiempo real, por lo que la detección no detecta el mensaje de error.
-
unable to open databaseReportar un error
Si se trata de una AppleMac OSPor favor, compruebe si es una cuestión de permisos.
El espacio en el disco duro del dispositivo está lleno y no se puede crear el archivo de la base de datos en el disco físico, lo que provoca un error. -
Se ha perdido:
不支持该功能El objeto de intercambio añadido en la detección es el intercambio de efectivo de la moneda digital, y en el código se llama la función API de los futuros.
-
Se ha perdido:
in SetCurrency OSError: exception: access violation reading 0x000000FCF25F0000Los futuros de las monedas digitales,
PythonLa estrategia, el sistema de retroalimentación utiliza un administrador privado, y el código cambia el par de transacciones para compensar los errores.
La razón es que el sistema de retracción no soporta el intercambio de retracción de futuros de monedas digitales. -
Descifrado por error
[La imagen fue tomada de la página web de la organización.
El error se debe a que la contraseña de la cuenta FMZ fue modificada, lo que provocó que la KEY de la API configurada no fuera válida.
Solución: Configurar de nuevo el API KEY de la plataforma, detener el administrador, reiniciar el administrador y luego intentar iniciar el disco. -
PythonEl motor de retroalimentación local, reportó un errorEOFerror。EOFlos errores son los errores de retraso en el final de la captura de la anomalía se puede ejecutar en cualquier soportePythonLas llamadas locales.python# encoding: utf-8 '''backtest start: 2021-08-30 00:00:00 end: 2022-09-05 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] ''' from fmz import * task = VCtx(__doc__) # initialize backtest engine from __doc__ def main(): while not exchange.IO("status"): Sleep(1000) exchange.SetContractType("swap") while True: bars_1min = _C(exchange.GetRecords, PERIOD_M1) # 获取1minK线 print(len(bars_1min)) _CDelay(2000) # 调用主函数 try: main() except: print(task.Join(False)) -
El lenguaje de Mac está involucrado en un problema muy oculto de cálculo de ciclo, en el que los valores calculados pueden tener N/A, por ejemplo:
La razón es que los parámetros del ciclo de cálculo exceden el rango de datos, lo que lleva a calcular el valor N/A.
-
El lenguaje Mac presenta errores: errores de desglose, y las estrategias son solo código simple, los errores de desglose son posiciones con un número de líneas muy largo, no se puede encontrar la causa.
Puede ser un problema con las primeras plantillas de lenguaje de Mac. Soluciones: 1. Exportar la política como un archivo XML 2. Crear una nueva política de lenguaje de Mac vacía 3. Importar el archivo XML en la nueva política vacía creada 4. Crear pruebas en vivo.
-
Se ha perdido:
fatal error:unexpected signal during runtime execution...go routine 11[syscall,locked to thread]Las pruebas
C++Se recomienda que se realice una prueba de detección de patrones de tolerancia a errores. -
Llamar
exchange.SetMarginLevel(10)Se ha perdido:Futures_OP 0:403:{"error":{"message":"Access Denied","name":"HTTPError"}}El examen de las solicitudes de la bolsa
API KEY¿Están activados los permisos? -
Error de respuesta:
symbol not setNo hay contratos en el código de seguimiento de la bolsa de futuros. Ver documentación de la API
exchange.SetContractTypefunción. -
ERR_INVALID_POSITIONEl errorEl sistema de detección de errores, generalmente compila errores para las estrategias. El intento de cerrar una posición cuando no se tiene una posición o cuando la cantidad de la posición es insuficiente puede causar este error, y comprobar si hay un congelamiento de posición causado por pedidos pendientes.
-
ERR_INVALID_ORDEREl errorEl sistema de retroalimentación informa errores, generalmente escribe errores para la estrategia, tenga en cuenta que compruebe el precio de la orden de pedido ((los futuros de monedas digitales del sistema de retroalimentación no respaldan temporalmente la orden del precio de mercado), la cantidad de la orden es 0 o un número negativo o pequeño ((los contratos de futuros son contratos cuyo número de hojas es entero)).
-
ERR_INSUFFICIENT_ASSETEl errorEl sistema de detección de errores generalmente indica que la cantidad de activos disponibles es menor a la cantidad de activos que se necesitan para la orden actual. En pocas palabras, no hay fondos para la orden.
-
Binding Error:Cannot passnon-string to std::stringMensaje de errorEn el código de la política, generalmente el nombre de un atributo es usado incorrectamente como resultado de la [[utilización de atributos no definidos]].
-
{"status":6004,"msg":"timestamp is out of range"}El errorEl tiempo del servidor debe ser actualizado si el rango de tiempo del servidor se excede.
-
timeoutEl errorEl error es un error de retraso en el tiempo, que se refiere a la falta de datos de respuesta de la interfaz de intercambio más de un cierto tiempo después de acceder a la interfaz de intercambio. Generalmente, es un problema de acceso a la red del sistema en el que se encuentra el administrador (muchos son problemas causados por la pared) o un problema de la interfaz de intercambio.
-
Error de ejecución del disco duro después de escribir la política:
syntax error invalid labelLa fuente del problema:
function main(){ if(1){ continue } } //这样会导致运行时报错continue¡Las frases deben ser usadas en el ciclo! -
Se ha perdido:
400:{"error":{"message":"Nonce is not increasing.This nonce:1523891993165,last nonce:1523891993165","name":"HTTPError"}}acerca de
nonceErrores en la verificación y corrección de errores en la informaciónnoncePor lo general, la verificación de la barra de tiempo no pasa, y se intenta sincronizar el tiempo del sistema en el que se encuentra el administrador que usa el disco duro. -
Secretkey decrypt failedEl errorLa venganza dice:
API KEYFallo de descifrado. Comprueba si está configuradoAPI KEYLa página de la plataforma FMZ para agregar un intercambio que ha intentado reconfigurar el intercambio después de modificar la contraseña de la cuenta FMZAPI KEYReinicie el administrador y vuelva a ejecutar la prueba en vivo. -
Por favor, utilice
exchange.GetorderEl error es frecuente:GetOrder(455284455):Error:invalid order id or order cancelled.¿Cuál podría ser la causa?Literalmente: el pedido ha sido cancelado o el ID del pedido no es válido. La razón: algunos intercambios cancelaron el pedido y el intercambio ya no mantiene la información del pedido, y lo borró.
exchange.GetOrderLa búsqueda de este pedido reportó este error, o el ID de la búsqueda en sí es incorrecto. -
rate limit, 429 Demasiadas solicitudes
rate limit, 429 Too Many Requests(太多请求)
La estrategia de acceso a la interfaz de intercambio es demasiado frecuente, reduciendo la frecuencia de acceso a la interfaz de intercambio. -
Siempre se muestra cuando se detecta y en disco duro
Invalid order price/amountEste tipo de problemas se deben a la invocación de la función de pedido
exchange.Buyoexchange.SellLos errores en el precio de entrada y en la cantidad de pedido.Cantidad de unidades negativas、0El método de detección de errores:exchange.Buyoexchange.SellLlamado antes de la ordenLogLa función emite el precio o la cantidad que se va a transmitir y determina la siguiente pregunta: -
GetOrders:400:{"code":-1121,"msg":"Invalid symbol."}¿Qué es lo que está mal?El mensaje dice:No es válido❚ Comprobar si el par de transacciones está configurado incorrectamente ❚
-
¿Qué significa que hay errores en los registros de discos duros?
Los códigos de error devueltos por las interfaces de las API de las plataformas de intercambio se explican en la documentación de las API de las plataformas de intercambio.
Oferta firme
-
Tiempo de impresión de la curva de ganancias del disco duro en Pine y Mac
El tiempo de impresión se ajusta según la configuración de los parámetros de la plantilla de lenguaje Pine / Mac, y también se imprimirá cuando la política esté completamente en equilibrio. -
El disco duro de Mac Language imprime el número de señales activadas, pero no hay ninguna operación de orden.
Puede ser que la configuración de los parámetros de la plantilla de lenguaje de Mac no sea adecuada, como los parámetros de precisión, precisión de la menor cantidad de pedido, etc. La razón es que la capa de activación de la señal determinó que la operación fue exitosa, y la capa de ejecución de la operación determinó que no se podía realizar una orden debido a algunos problemas en los parámetros, por lo que no hubo una orden real.
Ver otros artículos relacionados con Mac:
https://www.fmz.com/digest-topic/5789
https://www.fmz.com/digest-topic/5768 -
¿Por qué el servidor no puede recibir la señal de solicitud?
Compruebe si la dirección webhook url de esta configuración es la clave de la API correcta. La clave de la API se refiere a la clave de la API de extensión de FMZ, que se establece en la configuración de la cuenta en la esquina superior derecha de FMZ. Compruebe si el ID del disco físico en la URL de la webhook está correctamente rellenado. Compruebe si las permisos de la clave de la API de extensión de FMZ se dan correctamente.*Es decir, la propiedad, no directamente.*A continuación, escriba el nombre de la función que otorga los permisos.
-
¿Por qué hay un número limitado de pares de divisas en la configuración de objetos de la plataforma de intercambio en tiempo real?
Los controles personalizados para configurar el par de transacciones (sólo el disco duro puede hacerlo, los datos del centro de datos de retrospectiva tienen una variedad limitada y no se pueden configurar), como se muestra en la figura:
-
¿Por qué el Futu OpenD no funciona en el servidor, pero sí en el propio equipo?
Compruebe si el servidor es una dirección IP en el extranjero, Fuchun tiene restricciones para IP en el extranjero.
-
La estrategia de Mac ha estado funcionando inmóvil, y ahora que se está actualizando, ¿cuál es el problema?
Compruebe si se utiliza el modelo de precios de cierre de mercado, y compruebe la configuración en los parámetros de la plantilla de lenguaje de estrategia de Mac.
-
BITMEX¿Por qué la barra de datos de la línea K de la bolsa tiene un período de tiempo más largo que la barra de la misma posición de la bolsa?La razón es que
BITMEXLa barra de tiempo de la línea K de la bolsa es la barra de tiempo de la fecha de finalización de la barra actual.BITMEXLa interfaz de la bolsa no es compatible, por lo que la columna de tiempo de estos períodos es la hora de inicio de la barra como una columna de tiempo). Por ejemplo, la figura de la derecha:
Sistema de pruebas retrospectivas
-
Error en el sistema de detección: Exception catching is disabled
Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch.Compruebe si se ha utilizado la función "Fuente de datos personalizada" y si los datos proporcionados por el servicio de fuentes de datos personalizadas son correctos. La causa del error puede ser un dato de retroalimentación anormal.
-
¿Cómo se prueba si el honorario es de tomador/fabricante?
Scenario de prueba de la toma de cuotas/*backtest start: 2022-11-08 00:00:00 end: 2023-02-08 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Binance","currency":"BTC_USDT"}] */ function main() { var t = exchange.GetTicker() exchange.Buy(t.Last - 10, 100/(t.Last - 10)) while(1){ t = exchange.GetTicker() Sleep(1000) } } -
Los futuros de Binance
BITMEX¿Se incluye la retrospectiva en la curva de ganancias y pérdidas generada por el sistema de retrospectiva?La tasa de capital se calcula en la curva de ganancias y pérdidas generada por el sistema de retroalimentación.
-
El botón de retroalimentación no se puede pulsar

Compruebe si se ha abierto un agente, lo que hace que los archivos de la página de retroalimentación no se carguen completamente, y compruebe si el panel de control de la página contiene un mensaje de error. -
Tick en el disco duro¿Por qué hay un límite de 50MB en la retroalimentación?
La retroalimentación a nivel de disco, es decir, este Tick a nivel de disco, los datos de transacción son por segundo, un registro real. Y también hay instantáneas de disco, datos de flujo de pedidos, estos datos son muy grandes y solo admiten un volumen de datos de 50 MB. Es decir, la retroalimentación a nivel de disco, con un alcance máximo de varias horas, no puede ser una retroalimentación de largo alcance.
-
¿Por qué no funciona el sistema de detección que ha modificado la tarifa?
En el sistema de retroalimentación, los honorarios se establecen en la interfaz y solo se aplican al agregar, y los objetos de intercambio agregados anteriormente no se pueden modificar directamente a través de los controles de la interfaz.
-
¿Cómo hacer que la retroalimentación muestre un poco más de datos en el mapa personalizado?
Cuando se dibuja un gráfico personalizado
ChartFunción), el gráfico muestra la cantidad de datos y la configuración de retroalimentaciónGráficoLos parámetros son relevantes, el gráfico de control muestra el número máximo de líneas.chart.resetLa función vacía parte de los datos viejos. -
C++No se muestra nada, no hay errores ni registros, no hay cambios en la página después de hacer clic en el botónC++La estrategia de algunas excepciones no lanza errores, y utiliza la técnica de exclusión para verificar el código por errores posibles en el tiempo de ejecución. Por ejemplo: calcular el indicador causado por el número insuficiente de líneas K cuando se calcula el indicadorNANDespuésNANEl error se produce cuando el programa se bloquea al comparar los valores con el tipo de valor. -
python¡La respuesta es muerte!No puede ser.
tryLa detección de anomalías está ahí.SleepLa función, como se muestra en la imagen, se atasca. -
¿Por qué sólo hay algunas bolsas en el retrospectivo y un número limitado de pares de divisas en las bolsas?
Hay demasiados pares de transacciones en el mercado, por lo que el sistema de retroalimentación solo selecciona algunos pares de transacciones representativos para su prueba. Se puede elegir un par de transacciones de retroalimentación de situación similar, que se puede usar completamente en el mercado real.Los controles personalizadosConfigurar las operaciones respaldadas por la plataforma.
-
¿Por qué el sistema de detección no soporta más transacciones?
El sistema de retroalimentación sólo soporta algunas monedas principales de los intercambios más grandes, y algunas monedas no están soportadas por el momento. Si se necesita una estrategia de verificación, se puede usar otra moneda en lugar de pruebas en el sistema de retroalimentación. En realidad, las monedas digitales se pueden probar con diferentes monedas, excepto los factores de la situación.
-
En el sistema de detección:Pérdidas en las operaciones、Las pérdidas de las posiciones、La fianza、Ganancias estimadas、USDT actualmente disponibleEl concepto de
Pérdidas de posición: son todas las transacciones antes de la posición actual, y las pérdidas generadas en el momento de la posición libre son todas las pérdidas acumuladas.
Ganancia por posesión: es la pérdida por posesión actual, si no se tiene posesión actual, es cero
Fianzas: cantidad de fianza que cubre la posición que se mantiene en ese momento
Ganancias estimadas: las pérdidas y pérdidas acumuladas de las posiciones de mantenimiento en el precio actual (en el supuesto) se compensan y se suman para calcular las ganancias estimadas.
USDT actualmente disponible: cantidad de USDT actualmente disponible para abrir una posición. -
Cálculo de la tasa de éxito del sistema de detección
for (var i = 0; i < profits.length; i++) { if (i == 0) { if (profits[i][1] > 0) { winningResult++ } } else { if (profits[i][1] > profits[i - 1][1]) { winningResult++ } } if ((profits[i][1] + totalAssets) > maxAssets) { maxAssets = profits[i][1] + totalAssets maxAssetsTime = profits[i][0] } if (maxAssets > 0) { var drawDown = 1 - (profits[i][1] + totalAssets) / maxAssets if (drawDown > maxDrawdown) { maxDrawdown = drawDown maxDrawdownTime = profits[i][0] maxDrawdownStartTime = maxAssetsTime } } }El algoritmo de las tasas de éxito que se describe arriba se calcula de la siguiente manera:
Después de que el sistema de retroalimentación calcule la pérdida y ganancia flotante a tiempo, se calcula una curva de pérdida y ganancia flotante. Comienza desde el primer punto y compara el siguiente punto, si es más alto, se registra como ganador, si es más bajo, se registra como negativo, y luego continúa la comparación con el siguiente punto.
Anfitrión
-
El host en la plataforma FMZ se muestra fuera de línea, el programa de robots del host en el servidor se detiene
En el sistema operativo Linux, es posible que la falta de memoria provoque la suspensión del administrador.
1o. Estrategias para el uso excesivo de los recursos de hardware.
2. El Log de estrategias tiene una gran cantidad de contenido.
3 - El administrador tiene demasiadas políticas en el equipo.
4o, otros (en su apéndice) -
Error al ejecutar el administrador de la computadora MAC: dyld: cannot load (load command is unknown)
dyld: cannot load (load command is unknown)La versión del sistema operativo es demasiado baja.
-
Linux¿Dónde están los vídeos de los administradores del sistema?El video de la película fue publicado en el sitio web de la cadena de televisión BTV, donde se puede ver el video de la película.
-
¿Es necesario detener a los antiguos administradores y eliminarlos?
robot¿El programa, y luego volver a ejecutarse?No se puede detener a los administradores, simplemente borrar los viejos
robotarchivo del programa, y luego descargar el nuevo paquete de compresión, descomprimir el nuevorobotLos archivos del programa, en su lugar original. En este momento el administrador se actualiza, pero el disco duro en funcionamiento se utiliza en la memoria de la versión anterior, sólo se utiliza la versión más reciente cuando se reinicia el disco duro. -
LinuxImplementación de los administradores de servidoresLinuxLos pasos para instalar el administrador:
-
usar
screenEjecutar el programa hostrobotCuando aparezca-bash:screen:command not found"El administrador no está funcionando.LinuxEl sistema no está instaladoscreenEl software está disponible para su instalación.CentOSLa instrucción para instalar el sistema:yum install screen。
Los administradores actuales ya han apoyadoSSHSe puede desconectar y pasar a funcionar en segundo plano.screenEsta herramienta, en el programa de administradoresrobotLos siguientes comandos se pueden usar directamente en el directorio:./robot -s node.fmz.com/xxxxxxx, y luego ingrese la contraseña de la cuenta de FMZ para que aparezcaLogin OKEsto significa que el despliegue fue exitoso../robot -s node.fmz.com/xxxxxxxEn xxxxxxxx es el único identificador de cada cuenta de FMZ, que se puede introducir por sí mismo (después de iniciar sesión en la cuenta, salta a la página de administradores, haga clic en agregar administradores, salta a la página de agregar administradores).xxxxxxx。 -
¿Dónde están los registros del disco duro cuando el administrador está en funcionamiento?
El directorio en el que se encuentra el procedimiento de custodia
logsEn la carpetaDB3En el archivo de la base de datos, el archivo de la base de datos se llama disco duroidLa extensión se llamadb3。 -
LinuxBajo el sistema./robot -lVea los nombres de las casas de cambio respaldadas por el administradorexchange¿Qué es el intercambio?Nombrepara
exchangeLos indicadores de los objetos de la bolsaAcuerdo generalEl intercambio de acceso, el acuerdo general detallado: https://www.fmz.com/api#通用协议 -
La página de administradores administradores no se puede mostrar en la lista
Los controles que se muestran en la lista se muestran cuando se añaden más de 5 administradores.
-
¿Es normal que un administrador despliegue su propio administrador en la casilla de abajo que el administrador selecciona al crear el disco?
Los servidores públicos ofrecidos por la plataforma son una herramienta de manejo rápido para los usuarios principiantes. No es necesario implementar servidores públicos para aprender, es fácil de manejar. Sin embargo, las pruebas reales en el campo recomiendan el uso de servidores privados, ya que los recursos de hardware y la red de los servidores públicos se comparten, y la plataforma puede no mantenerlos regularmente.
-
La serie de direcciones en la que se desplegó el administrador
./robot -s node.fmz.com/1234567¿Soy el único?Esta dirección es la identidad de cada usuario.
/1234567Los valores de las partes son únicos y se utilizan para identificar a los usuarios.Centro de control->Haga clic en el botón para agregar administradores->Añadir una página de administradorEn la página web de la empresa, se puede ver la dirección y copiarla y pegarla directamente. -
Se añaden variables de entorno en el sistema donde se encuentra el administrador
python2.7¿Por qué no encontramos las variables ambientales?windowsInstalación inicial del sistemapython, se reinicia después de la configuración de las variables de entorno.
El entorno de la investigación
-
Error en el EOF
python regreso es el regreso de la excepción de la EOF final (porque a veces la estrategia puede ser un bucle muerto). Así que la sugerencia de la excepción de la EOF es normal.
Funciones de la plataforma
-
¿Cuántos discos duros puede ejecutar un administrador?
No hay limitaciones en la cantidad, dependiendo de la configuración del servidor y la complejidad de la estrategia, se debe considerar si los discos duros múltiples acceden a la misma interfaz de intercambio (considerando la frecuencia de llamada de la interfaz, cuanto más frecuente sea el disco), generalmente 5-6 discos duros no tienen problemas.
-
Comprender los conceptos básicos como el administrador y el disco duro
-
El contenido de las páginas de los administradores y del disco duro desaparece.
Todo el contenido de la página del servidor desaparece, el servidor funciona correctamente y el servidor funciona correctamente.
Compruebe el mensaje de error del navegador, si el navegador tiene un plugin instalado, el problema de contaminación de variables globales causado por el plugin. La solución es escribir en el plugin del navegador, o usar un navegador sin instalar ningún plugin del navegador para iniciar sesión en FMZ. -
¿La estrategia oficial de alquiler, la implementación de un servidor alquilado, se renueva automáticamente siempre y cuando el saldo de la cuenta FMZ sea suficiente?
Las estrategias de alquiler no se renuevan automáticamente, y los servidores de administradores de una sola clave se renuevan automáticamente.
-
¿Dónde está la función de la plantilla? Quiero poner algunas funciones independientes en la plantilla, otras estrategias también pueden ser consultadas.
FMZ APILas instrucciones en el documento: https://www.fmz.com/api#模板类库 -
Disco de simulación de FMZ
wexAppLa simulación de la bolsa, sólo para elegirBTC_USDT¿Cómo puedo personalizar el resto de transacciones?wexAppPor el momento, el disco simulado solo soporta algunos de los principales pares de transacciones, y no todos los pares de transacciones tienen simulación. -
El problema con las llamadas simultáneas a la API de extensión es que siempre se reportan errores de verificación de noce en las llamadas simultáneas.
Extensiones para crear más de una plataforma FMZ
API KEY, para las peticiones simultáneas. -
¿Se registra el estado del hilo de inicio creado en el host cuando se usa la herramienta de inicio?
Cuando se ejecuta la herramienta de desinstalación, si no se modifica nada por segunda vez, los objetos de la bolsa creados anteriormente se conservan y no se liberan. Por lo tanto, algunos estados se registran, por ejemplo, los objetos de la bolsa actuales comoModelo de las monedas¿O tambiénModelo de apalancamiento。
-
¿Por qué me inscribí?
wexApp¿Se puede entrar a la plataforma y no tener ningún activo, ni carteras ni zona de monedas?Después de registrarse, se necesita una cuenta de activación de correo electrónico que se puede activar en el centro personal.
-
La información del registro fue cortada durante un tiempo, y se muestra a continuación... pero ¿qué pasa con la estructura de los datos que se necesitan ver?
Soluciones, usoCentro de controldeHerramientas de depuraciónUtilizado en las herramientas de debug.
returnLa sentencia devuelve el contenido que se necesita mostrar, no interrumpe el contenido que se muestra. -
JavaScriptEn la estrategia$.¿Qué significa la función que comienza?$.La función que comienza es la función de exportación de la plantilla, similar a la función de interfaz del módulo. Consulte la descripción en la documentación de la API: https://www.fmz.com/api#模板类库
pythonLa función de exportación de la política de edición comienza conext.No hay nada que decir. -
¿Cómo dibujar una línea recta en un mapa de datos de tendencia de los resultados de la medición?
Los gráficos que se muestran al final de la detección se dividen en dos tipos: uno es generado por el sistema y la política no puede controlarlo. El otro es la interfaz API con FMZ en el código de la política.
ChartEl gráfico de las funciones. -
¿Cómo restablecer la autenticación de Google si se ha eliminado por error el verificador de Google en el teléfono?
Puede acceder a la plataforma FMZ con otro navegador, y al introducir el código de verificación de Google, haga clic en "Desbloquear" para saltar a la página de desbloqueo de correo electrónico.
otro
-
Intercambios
API KEYSeguridad y seguridadEl usuario
API KEYFMZ no guarda información explícita de las cuentas de los usuarios en la bolsa y utilizaHttpsAcuerdo -
Problemas de seguridad de la estrategia
La pregunta se puede ver en: https://www.fmz.com/bbs-topic/1657
-
Sistemas y mecanismos de facturación de la plataforma FMZ
Los criterios para la facturación del disco duro:
1 Un disco duro se factura una vez por hora (US$0.05 por hora) y se compra una hora de uso.
2. Detener y reiniciar el disco duro en menos de una hora sin recargar.
3 Discos fijos que se han detenido y no se activarán en la próxima hora.
4. El disco duro creado será facturado inmediatamente por una hora.Este tiempo de facturación es el tiempo de procesamiento de la operación de facturación, ya que estas operaciones de procesamiento consumen tiempo, por lo que es posible que el tiempo de deducción se retrase. Por ejemplo, la hora de facturación actual es de 9:00, es posible que el tiempo de procesamiento de esta operación de facturación sea de 9:02 (la hora que se muestra en el gráfico), se corregirá en la próxima operación de deducción (la próxima hora de deducción es de 10:00, no es una facturación anticipada).
-
La base de datos de talib tiene una precisión limitada
Si los datos son muy pequeños se interrumpen y se muestra como 0 <unk>.
En el sitio web del proyecto, se puede encontrar información sobre el proyecto. -
Deducción del disco fijo en el proyecto de facturación, deducción única de más de una hora de facturación (0.05USD)
La razón puede ser la interrupción de la comunicación entre el administrador y la plataforma FMZ durante un período prolongado (la plataforma física interactúa directamente con la bolsa, por lo que la estrategia de ejecución es normal), la acumulación de deducciones, el retraso de las deducciones y las deducciones de liquidación de una sola vez. -
La casilla en la que se registró
Si la casilla se pierde, por ejemplo, se necesita restablecer la casilla vinculada a la cuenta actual de FMZ, se necesita usar la cuenta de FMZ para enviar formularios de trabajo, enviar la pantalla de archivo de carga histórica y otra verificación de información, y restablecer la dirección de la casilla después de la verificación manual.
我试了两种exit的方式,一种是直接在开单时挂进去,代码如下,回测图一
if strategy.position_size >= 0 and Trend < 0 and TCI_bear
strategy.entry("SHORT", strategy.short, qty= rolling == true ? roll_size : size, comment='OP-S@')
strategy.exit("CL-S", "SHORT", xxxxxx)
state := -1
trading_1:=0
另一种是入场后采用查找订单的方式exit,代码如下(奇怪的是用这种方式exit直接不起作用了(回测图二),查找订单的函数是直接从文章里复制的)
if barstate.isrealtime and findOrderIdx("SHORT") >= 0 and state == -1
state := 0
strategy.exit("CL-S", "SHORT", xxxxxx)

还有一点,不知道为什么同一信号连续开了3次,代码如下
if trading_1 == 0 and Trend == -1 and TCI_bear and strategy.position_size < 0
strategy.entry("IP-S1", strategy.short, qty=size)
trading_1 := -1
梦总帮忙看一下是怎么回事
- 1
- 2
- 3
- 4




















