[TOC] Je vous en prie.
Résumé des questions fréquemment posées.
Comment faire une recherche par mot-clé dans un article?
UtilisationCtrl + f
Le bouton ouvre la page de recherche, entrez le mot-clé par exemple: le mot-clé de l'hôte de l'hôte.
Actuellement, la station FMZ International ne prend en charge que les opérations de crypto-monnaie.
Nous avons besoin d'un peu de temps.
GetTicker
etGetDepth
Je l'ai trouvé.Un prixetJe vends à un prixComment cela pourrait-il être différent?
- ```exchang.GetOrders```得到的是未成交的挂单,那么已经成交的单子在哪里获取?
查询订单还有一个API就是```exchange.GetOrder```,这个是根据```ID```查询所有类型的订单。输入订单```ID```就查出这个订单。获取成交的订单只有看交易所有没有提供这样的接口了,每个交易所可能提供的接口都不一样。
- ```JavaScript```策略时间字符串转时间戳的结果不对
需要考虑系统时间设置中的时区。
![常见问题汇总(持续更新...)](/upload/asset/16483622956b63062c56.png)
- 为什么我打印出来的开盘价、收盘价都一样?
1、可能是交易所这个时刻确实没交易,本身就是这个BAR高开低收一样。
2、看下是不是观察的是最后一个BAR,在最后一个BAR生成的瞬间,高开低收是一样的。
- ```Signature not valid:Invalid submission time or incorrect time format[无效的提交时间,或时间格式错误]```,此类和服务器校对时间的错误
该问题为```windows2000/2003/XP```等比较旧的操作系统的问题,参考资料:
https://support.microsoft.com/en-us/help/821893/the-system-clock-may-run-fast-when-you-use-the-acpi-power-management-t
建议使用```Linux```服务器,或者在这些出现该问题的```windows```系统安装时间同步软件,高频率同步时间,防止出现时间校验错误。
- 为什么麦语言的```ATR```(```TR```)计算出的数值和```TA```/```talib```库计算出来的有差异?
原因是麦语言指标的计算方式和```TA```/```talib```库底层算法不一致。两者都对,算法不同而已。类似```MACD```有的用一倍的```DIF-DEA```,有的用两倍的```DIF-DEA```,都是对的。
- 交易所名称为```Futures_Esunny```的代表的是什么?
代表**易盛协议**的交易所对象,可由```exchange.GetName()```函数返回。
目前FMZ国际站仅支持数字货币业务。
- 麦语言多周期引用数据,在多周期引用代码块内```#EXPORTTEST...#END```声明好变量后。在策略中引用时使用了```REF```,就会按照当前的周期去引用数据导致和想象中的不一样。
所有需要的多周期数据,在```#EXPORTTEST...#END```中处理好,在外部只直接使用。
- 找不到FMZ API文档了
可以直接输入页面地址:https://www.fmz.com/api,或者如图点击链接:
![常见问题汇总(持续更新...)](/upload/asset/cb2bbc8b5965d8a0418b2dd62925c38d.png)
- 为啥```MACD```跟交易所算出来的值不一样?
对比时需要注意是否K线周期一致,```MACD```指标参数是否一致,时间段一致,品种一致,此外```MACD```的量柱算法有多种。有的是```DIF-DEA```,有的是```2*(DIF-DEA)```,```DIF```和```DEA```应当是一致的。
- 请问获取历史K线数据的时候,获得的K线数量跟什么有关?
在访问```exchange.GetRecords```接口获取K线数据时,具体接口返回的K线数量是交易所定的。可能每家交易所的返回的K线数量都不一致(甚至有些交易所没有提供K线接口,此类情况托管者在策略调用```exchange.GetRecords```的时候会调用获取交易所交易历史数据的接口根据交易历史合成K线)。托管者接受到的K线会持续累计在一起,需要有一定频率的去访问```exchange.GetRecords```接口,否则可能会影响数据的持续性。
- 我看API文档执行```exchange.Buy```函数只会返回```ID```,怎么会返回那么多信息?
FMZ的API函数中可以产生日志输出的函数例如```Log```、```exchange.Buy```、```exchange.CancelOrder```等都可以在必要参数后跟一些附带输出参数。例如:```exchange.CancelOrder(orders[i].Id, orders[j])```这样就是在取消```orders[j]```这个订单时,附带输出这个订单信息。
- 实盘如何微信推送信息?
只有实盘有效,在```Log```函数最后加上字符```'@'```即可推送该条```Log```函数打印的信息,详见API文档:https://www.fmz.com/api#Log
目前FMZ国际站仅支持数字货币业务。
- ```exchange.GetAccount```这里获取信息会不会因为网络等其他问题造成获取失败,FMZ系统底层是已经有对失败做处理了?还是用户必须自己处理请求失败的情况?为什么官方不做出处理呢?这样用户使用的时候不是更方便吗?
会有失败,需要用户容错处理。FMZ底层不处理数据,反馈给用户的是未加工过的数据,具体容错方式或者逻辑由策略制定。如果这个处理了可能会影响用户决策,决策交给策略处理,具体是**过滤错误信息**还是**重试**等等处理方式。
- OKEX合约下单量是什么单位?是币数还是合约张数?
OKEX合约交易下单量在FMZ下单时是按合约张数,例如```exchange.Buy(1000,1)```就是下价格为1000,量为1张合约的订单。
- 在FMZ上调用```exchange.Sell```和```exchange.Buy```是下普通限价单吗?
具体是看传入的第一个参数(第一个参数是下单价格)。部分交易所支持市价单,价格参数传入```-1```即为下市价单,买入和卖出量的意义有些不同(第二个参数),价格不是```-1```就是限价单。大部分现货交易所下单接口,市价单买单的下单量都是**金额**并非**币数**。数字货币期货交易所下单接口,下单量一般为合约张数是整数。
参看下单接口:
https://www.fmz.com/api#exchange.buyprice-amount
https://www.fmz.com/api#exchange.sellprice-amount
- Mail函数
Le courrier électronique ((
访问QQ的smtp 203.205.232.7 超时,目前绝大多数云服务器基本都屏蔽了25端口,除非实体服务器,运营商基本不会屏蔽25端口的。 绝大多数云服务器,也可以申请解封25端口,我就是申请然后解封的。
- Pine语言、麦语言的模板参数:变量最长周期数会影响指标计算
默认这个「变量最长周期数」为600,如果指标参数设置过大,例如计算MA(1000)。则由于系统只保留了600个数据,无法计算出1000个数据的均值。
## 报错
- InternalError: arg1 type error
触发场景:
```js
function main() {
_G(11212, "123")
}
- 无限递归调用错误:signal arrived during external code execution
根据该特征判断:Exception 0xc00000fd
```run
Exception 0xc00000fd 0x1 0x5cdd203f40 0x1ee5955
PC=0x1ee5955
signal arrived during external code execution
def 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()
Vérifiez si le code de la section d'édition de la politique contient des astuces d'erreur, vérifiez si var name =
BITMEX
Il y a 429 erreurs.{"error":{"message":"Rate limit exceeded retry in 1seconds……"}}
Vous voyez une erreur 429, c'est-à-dire que la fréquence d'accès à l'interface de l'échange est trop élevée. Il est nécessaire d'augmenter l'intervalle de consultation et de réduire la fréquence d'accès à l'interface.
Bittrex
Le message est faux:{"success":false,"message":"NOT_ALLOWED","result":null}
L'échange est limité, connectez-vousBittrex
Sur le site Web de l'échange, vous pouvez voir s'il est nécessaire de cocher des informations telles que le protocole d'utilisation.
TypeError:value has no property at
Le dépistage de l'erreur est différent de l'erreur en temps réel, donc le dépistage ne détecte pas cette information d'erreur.
unable to open database
Des erreursSi c'était un ordinateur AppleMac OS
Veuillez vérifier s'il s'agit d'un problème d'autorisation.
Le disque dur de l'appareil est plein et les fichiers de base de données ne peuvent pas être créés sur le disque, ce qui entraîne un message d'erreur.
不支持该功能
L'objet d'échange ajouté lors de la réévaluation est un échange de devises numériques en temps réel, qui appelle la fonction API du futur dans le code.
in SetCurrency OSError: exception: access violation reading 0x000000FCF25F0000
Les futures de crypto-monnaie sont devenues de plus en plus populaires.Python
La stratégie, c'est que le système de retouche utilise des hôtes privés, qui changent les rapports d'erreur des transactions dans le code.
La raison en est que le système de retouche ne prend pas en charge les paires de transactions de retouche de futures de devises numériques.
Déchiffrer le message [Picture]L'erreur est due à une modification du mot de passe du compte FMZ, ce qui a entraîné une défaillance de l'API KEY configurée. Solution: reconfigurez l'API KEY de l'échange, arrêtez le gestionnaire, redémarrez le gestionnaire et essayez de redémarrer le disque.
Python
Le moteur local de retouche, erreurEOFerror
。
```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))
La raison en est que le paramètre de cycle de calcul dépasse la portée des données, ce qui conduit à un calcul de la valeur N/A.
Peut-être un problème avec les modèles de Mac dans les premiers temps. Solution: 1. Exporter une politique en tant que fichier xml.2. Créer une nouvelle politique Mac vide.3. Importer un fichier xml dans une nouvelle politique vide.3. Créer un test de disque réel.
fatal error:unexpected signal during runtime execution...go routine 11[syscall,locked to thread]
vérifierC++
Si la stratégie écrite utilise un pointeur vide, il est recommandé de refaire le test en mode erreur.
exchange.SetMarginLevel(10)
Le message est faux:Futures_OP 0:403:{"error":{"message":"Access Denied","name":"HTTPError"}}
Vérifier les demandes des boursesAPI KEY
Si les autorisations sont activées.
symbol not set
Aucun contrat n'est défini dans le code de récapitulation des échanges à terme, voir la documentation APIexchange.SetContractType
Les fonctions.
ERR_INVALID_POSITION
Une erreurLe système de réponse rapporte des erreurs, généralement des erreurs écrites pour la stratégie. Une tentative de mise en place d'un ordre de mise en place provoque cette erreur lorsqu'il n'y a pas de positions ou qu'il y a un nombre insuffisant de positions.
ERR_INVALID_ORDER
Une erreurLes erreurs du système de retouche, généralement des erreurs de rédaction pour la stratégie, doivent être vérifiées pour vérifier le prix de la soumission (les futures de devises numériques ne supportent pas temporairement les listes de prix du marché), si le volume de la soumission est nul ou négatif ou fractionnel (les contrats à terme sont des contrats avec des nombres entiers).
ERR_INSUFFICIENT_ASSET
Une erreurL'erreur du système de retouche est généralement due au fait que le nombre d'actifs disponibles est inférieur au nombre d'actifs requis pour la souscription actuelle; en termes simples, il n'y a pas de fonds souscrits.
Binding Error:Cannot passnon-string to std::string
Des erreurs ont été signaléesDans le code de stratégie, l'utilisation d'un nom d'une propriété (utilisant une propriété non définie) entraîne généralement une erreur.
{"status":6004,"msg":"timestamp is out of range"}
Une erreurLe temps du serveur est hors de portée, il est nécessaire de mettre à jour le temps du serveur et il ne peut pas être trop dévié.
timeout
Une erreurL'erreur est une erreur d'extérieur de temps, c'est-à-dire une erreur causée par l'absence de données de réponse de l'interface de l'échange plus d'une certaine période après avoir accédé à l'interface de l'échange. Généralement, il s'agit d'un problème d'accès au réseau du système du gestionnaire (un grand nombre étant causé par un mur) ou d'un problème de l'interface de l'échange.
syntax error invalid label
La source du problème:
function main(){
if(1){
continue
}
}
//这样会导致运行时报错
- 报错:```400:{"error":{"message":"Nonce is not increasing.This nonce:1523891993165,last nonce:1523891993165","name":"HTTPError"}}```
关于```nonce```校验的错误,报错信息上有关```nonce```通常是时间戳校验不通过,尝试同步一下该实盘使用的托管者所在系统的时间。
- ```Secretkey decrypt failed```错误
![常见问题汇总(持续更新...)](/upload/asset/345be4d2aa663dd2c02cf5b97f95ce03fc0a7378.png)
这个报错是说```API KEY```解析失败。检查是不是配置了```API KEY```后修改过FMZ账号的密码,尝试在FMZ平台添加交易所的页面重新配置交易所的```API KEY```并且重启托管者,然后重新运行实盘测试。
- 请问使用```exchange.Getorder```经常报出这个错:```GetOrder(455284455):Error:invalid order id or order cancelled.```有可能是什么原因呢?
字面意思:订单已经取消或者订单ID无效。原因:有些交易所订单取消了交易所就不再维护这个订单信息了,就清除了。所以你在```exchange.GetOrder```查询这个订单就报这个错误,或者本身查询的这个ID就是错误的。
- rate limit, 429 Too Many Requests(太多请求) 报错
![常见问题汇总(持续更新...)](/upload/asset/65057d99e2acdf9e237130ae7dc8082d333dc36b.png)
```rate limit, 429 Too Many Requests(太多请求)```
策略中访问交易所接口频率过于频繁,降低访问交易所接口的频率。
- 回测和实盘时候总是显示```Invalid order price/amount```
此类问题是由于调用下单函数```exchange.Buy```或者```exchange.Sell```时传入的价格和下单量数值错误引起的。对于**负数下单量**、**0**等检测错误方法:可以在```exchange.Buy```或```exchange.Sell```下单前调用```Log```函数输出下即将传入的价格参数或者数量参数,确定下问题。
- ```GetOrders:400:{"code":-1121,"msg":"Invalid symbol."}```这是什么错误?
这个报错是说:**无效的交易对**。您检查下是不是交易对设置错误了。
- 实盘日志上报错有些错误码是什么意思?
各个交易所API接口返回的错误码解释需要看下交易所API文档。
## 实盘
- Pine语言、麦语言实盘收益曲线打印时间
根据Pine语言/麦语言模板参数上的设置定时打印,策略完全平仓时也会打印。
- 麦语言实盘打印了信号触发行数,但是没有任何下单操作。
可能是麦语言模板参数设置不合适,例如精度、最小下单量精度等参数。原因是信号触发层判断成功,到了交易执行层由于参数某些问题导致判定为不可下单,进而没有实际下单。
参看麦语言相关帖子:
https://www.fmz.com/digest-topic/5789
https://www.fmz.com/digest-topic/5768
- 我设置好Tradingview上的webhook url报警,为什么实盘(机器人)收不到请求信号?
检查webhook url这个设置的地址里,API KEY 是否正确。这里的API KEY指的是FMZ的扩展API KEY,在FMZ右上角账号设置里设置。检查webhook url里面的实盘ID是否填写正确。 检查FMZ的扩展API KEY权限是否给与正确。权限是英文逗号间隔,默认是\*,即所有权限,不要直接在\*后面写给与权限的函数名。
- 创建实盘时交易所对象配置上为什么只有有限的几种货币对?实际交易所是支持很对交易对的。
设置交易对的自定义控件(只有实盘可以,回测时数据中心的数据只有有限的品种,并不能自定义设置),如图:
![常见问题汇总(持续更新...)](/upload/asset/16afb4b09e20bfec9c3f.png)
- 为什么在服务器上运行FutuOpenD(富途)获取不到行情,在本机上的可以获取到?
检查服务器是否是海外IP地址,富途对于海外IP有限制。
- 麦语言策略运行了一直不动,就开始更新了一下行情,是什么问题?
检查是不是使用的收盘价模型,检查设置在策略麦语言模板参数上。
- ```BITMEX```交易所K线数据时间戳为什么比其它交易所相同位置的Bar多一个周期时间?
原因是```BITMEX```交易所的K线时间戳是以当前Bar的结束时间作为时间戳的(有些K线周期```BITMEX```交易所接口没有支持,所以这些周期的时间戳是以Bar起始时间作为时间戳的)。例如右图:
![常见问题汇总(持续更新...)](/upload/asset/f519d92db5a85617032f225ca88a6b6f.png)
## 回测系统
- 回测系统报错:Exception catching is disabled
La capture d'exception est désactivée, cette exception ne peut pas être capturée. Compiler avec -s DISABLE_EXCEPTION_CATCHING=0 ou DISABLE_EXCEPTION_CATCHING=2 pour capturer.
检查是否使用了「自定义数据源」功能,自定义数据源服务提供的数据是否正确,引发该报错的原因可能是异常的回测行情数据。
- 如何测试手续费是taker/maker?
手续费 taker/maker 测试场景
/* test de retour
début: 2022-11-08 00:00:00
Fin du projet: 2023-02-08 00:00:00
période: 1h
Période de base: 15m
les échanges: [{
fonction principale Var t = échange.GetTicker (() échange.Acheter (le dernier - 10, le dernier - 10)
while(1){
t = exchange.GetTicker()
Sleep(1000)
}
}
- 币安期货、```BITMEX```回测,资金费率是否算入回测系统生成的盈亏曲线?
资金费率是算入回测系统生成的盈亏曲线的。
- 回测按钮显示不可点击
![常见问题汇总(持续更新...)](/upload/asset/16d0e0e50cf0b4788834.png)
检查是否开了代理,导致回测页面文件加载不完整,检查页面控制台是否有报错信息。
- **实盘级Tick**回测时,为什么有50MB的限制?
实盘级别回测, 就是这个实盘级Tick, 行情数据是逐秒的,真实记录。 并且还有盘口快照, 订单流数据, 这些数据量非常大, 只支持 50MB的数据量。 也就是说 实盘级别回测 ,范围最多几个小时, 无法长时间范围回测。主要用于测试高频策略。
- 回测系统修改了手续费,为什么不起作用?
![常见问题汇总(持续更新...)](/upload/asset/16b695e2eb573febe865.png)
回测系统中,界面上设置手续费,只有添加上才生效,之前添加的交易所对象是无法通过界面上的控件直接修改的。
- 怎么才能让回测自定义画图显示的数据多一点?
自定义图表画图时(```Chart```函数),画图在回测时候显示的数据量和回测设置上的**图表**参数有关,控制图表显示最大条数。注意是否使用了```chart.reset```函数清空了部分旧数据。
- ```C++```回测什么都不显示,也没有报错信息和日志,点击按钮后页面没有变化
```C++```策略一些异常不抛出错误,用排除法逐级检查代码可能的运行时错误。例如:指标计算时K线数量不足导致的指标算出```NAN```后```NAN```和数值类型做比较判断,引起程序崩溃。
- ```python```回测卡死!
不能在```try```异常检测里面写```Sleep```函数,如图的写法就会卡死。
![常见问题汇总(持续更新...)](/upload/asset/681fe9b42d71ce056e8c931ac0c12650.png)
- 为什么回测的时候只有几个交易所,交易所的交易对也只有有限的几种?
交易所的交易对太多了,所以在回测系统只选择了几种有代表性的交易对用来测试。可以选择情况相近的交易对回测,在实盘的时候是完全可以用**自定义控件**设置交易所支持的交易对。
- 回测系统为什么不支持多些交易对?
回测系统暂时只支持一些比较大的交易所的主流币种,有些币种暂时还没支持。如果需要检验策略可以在回测系统中用其它币种代替测试。其实数字货币用不同币种测试除了行情因素,对于检验策略还是可以的。简单说就是回测系统尽量把主流交易对支持,回测不应当拟合具体某个品种。就是说如果策略有效,哪怕是一系列有交易规律的随机生成的行情变动,或者是其它币种行情,都应该是有基本上正向收益的的表现。这个就是策略的普适性,如果只能拟合一段历史数据或者在某个品种表现不错,那这种策略实际上是有潜藏风险或者有缺陷的。
- 回测系统中:**平仓盈亏**、**持仓盈亏**、**保证金**、**预估收益**、**当前可用的USDT**的概念
平仓盈亏:就是当前持仓之前的所有交易开仓,平仓时,产生的盈亏,是所有累计的盈亏。
持仓盈亏:就是当前持仓的盈亏,如果当前没持仓,就是0
保证金:当前持仓的仓位占用的保证金数额
预估收益:把当前持仓按照当前价格(假设)平仓,产生的盈亏,再和平仓累计的盈亏相加,算出预估的收益。
当前可用的USDT:当前可以用来开仓的USDT数额。
- 回测系统胜率计算
pour (var i = 0; i < profits.longueur; i++) { si (i == 0) { si (profits[i][1] > 0) { Résultat gagnant++ Je ne sais pas. { \ pos (192,220) } autre si (profits[i][1] > profits[i - 1][1]) { Résultat gagnant++ Je ne sais pas. Je ne sais pas. si ((bénéfices[i][1] + actifs totaux) > maxActifs) { maxActifs = bénéfices[i][1] + totalActifs maxAssetsTime = bénéfices[i][0] Je ne sais pas. si (maxActifs > 0) { Var Tirage vers le bas = 1 - (bénéfices[i][1] + totalActifs) / maxActifs si (drawDown > maxDrawdown) { MaxDrawdown = Le tirage au sort maxDrawdownTime = bénéfices[i][0] maxDrawdownStartTime = maxAssetsTime Le temps de mise à jour est de Je ne sais pas. Je ne sais pas. Je ne sais pas.
上面是胜率算法,描述一下是这样计算的:
在回测系统定时计算浮动盈亏后,统计出一条浮动盈亏曲线。从第一个点开始对比下一个点,如果高于则记录为胜,低于记录为负,然后用下一个点往后继续对比。
## 托管者
- FMZ平台上托管者显示离线,服务器上托管者robot程序被停止
在linux操作系统,有可能内存不足导致托管者被系统停止。触发原因:
1、策略过度使用硬件资源。
2、策略Log输出了一个非常大的内容。
3、托管者所在设备上运行了过多的策略实盘。
4、其它(补充中)
- MAC电脑运行托管者时报错:dyld: cannot load (load command is unknown)
dyld: ne peut pas charger (commande de chargement inconnue)
La version du système d'exploitation est trop basse.
Linux
Où est la vidéo déployée par l'administrateur du système?Le lien vers la station B:https://www.bilibili.com/video/BV1eZ4y1c73v?share_source=copy_web
robot
Le programme, puis le redémarrer?Vous pouvez supprimer l'ancien sans arrêter l'administrateur.robot
Vous pouvez télécharger le nouveau paquet de compression, le décompresser pour créer un nouveau paquet de compression.robot
Fichier de programme, placé à sa position d'origine. À ce moment-là, l'administrateur est mis à jour, mais la disquette en cours d'exécution est toujours utilisée dans la mémoire, la version la plus récente n'est utilisée que lors du redémarrage de la disquette.
Linux
Déploiement par administrateur de serveurLinux
Les étapes pour installer l'hôte:https://www.bilibili.com/video/BV1eZ4y1c73v?share_source=copy_web
screen
Exécuter le programme de l'administrateurrobot
Il y a eu une rébellion.-bash:screen:command not found
Les administrateurs ne fonctionnent pas.Linux
Système non installéscreen
Le logiciel est généralement installé.CentOS
Les commandes d'installation du système:yum install screen
Je ne sais pas.
Les gestionnaires actuels sont déjà là.SSH
Débranchez et passez en arrière-plan.screen
Il s'agit d'un outil qui fonctionne dans les programmes d'administration.robot
Utilisez la commande directement dans le répertoire:./robot -s node.fmz.com/xxxxxxx
, puis entrez le mot de passe du compte FMZLogin OK
Il s'agit d'un déploiement réussi../robot -s node.fmz.com/xxxxxxx
Le code d'identification unique de chaque compte FMZ est xxxxxx, et vous pouvez le saisir vous-même (après la connexion au compte, accédez à la page des hôtes, cliquez sur Ajouter un hôte, accédez à la page Ajouter un hôte).xxxxxxx
。
Les répertoires dans lesquels se trouve le programme de l'administrateurlogs
Dans le dossierDB3
Dans un fichier de base de données, le fichier de base de données est appelé disque dur.id
L'extension s'appelledb3
。
Linux
Le système./robot -l
Voir les noms des échanges soutenus par les gestionnaires, qui apparaissent dans le nom.exchange
Quelle est la bourse?NomPourexchange
Le code de l'objet de l'échangeAccord généralLes échanges sont accessibles, les détails du protocole général:https://www.fmz.com/api#%E9%80%9A%E7%94%A8%E5%8D%8F%E8%AE%AE
Si vous ajoutez plus de 5 hôtes, les contrôles apparaîtront dans la liste.
Les hébergeurs publics proposés par la plateforme sont un outil rapide et pratique à ajouter pour les utilisateurs débutants. Il n'est plus nécessaire de déployer des hébergeurs lors de l'apprentissage, ce qui est pratique. Cependant, les tests en direct recommandent d'utiliser des hébergeurs privés, car les ressources matérielles et les réseaux des hébergeurs publics sont partagés et la plateforme peut ne pas les maintenir régulièrement.
./robot -s node.fmz.com/1234567
Je suis le seul ou quoi?Cette adresse est l'identifiant d'adresse de chaque utilisateur./1234567
La valeur de chaque partie est unique et est utilisée pour identifier l'utilisateur.Centre de contrôle->Cliquez sur le bouton Ajouter un administrateur->Ajouter une page d'administrateurSi vous avez un lien vers le site, vous pouvez le voir, copier-coller directement et l'utiliser.
python2.7
Il y a des gens qui ne sont pas d'accord avec le fait que les variables de l'environnement ne soient pas trouvées.windows
Installation initiale du systèmepython
Les paramètres de l'environnement doivent être réglés et doivent être réactivés.
Les réponses de python sont terminées par une exception EOF (parce que parfois les stratégies peuvent être un cercle mort) ; il est donc indiqué que les exceptions EOF sont normales.
Il n'y a pas de limitation de nombre, en fonction de la configuration du serveur et de la complexité de la stratégie, en particulier en tenant compte du fait que ces plusieurs disques virtuels accèdent tous à la même interface d'échange (en tenant compte de la fréquence d'appel d'interface, plus il y a de disques virtuels, plus la fréquence est élevée).
https://www.fmz.com/digest-topic/7542
Le disque virtuel, le contenu de la page de l'administrateur disparaît, le disque virtuel fonctionne normalement et l'administrateur fonctionne normalement sur le serveur.
Vérifiez les messages d'erreur du navigateur pour savoir si le navigateur a des plugins installés, les problèmes de pollution de variables globales causés par les plugins.
Les stratégies louées ne sont pas automatiquement renouvelées, les serveurs d'hébergement déployés en un clic le sont.
FMZ API
Il y a une explication dans le document:https://www.fmz.com/api#%E6%A8%A1%E6%9D%BF%E7%B1%BB%E5%BA%93
wexApp
Il n'y a que le choix.BTC_USDT
Comment puis-je personnaliser les autres transactions?wexApp
L'analogue ne prend actuellement en charge que quelques paires de transactions traditionnelles, et toutes les paires ne sont pas analogiques.
Il est possible de créer des extensions pour plusieurs plateformes FMZAPI KEY
Les requêtes sont envoyées simultanément.
Lors de l'exécution de l'outil de débogage, si rien n'est modifié la deuxième fois, les objets d'échange créés précédemment ne seront pas libérés.Modèle de piècesOu alorsMode de levier。
wexApp
Le site Web de l'échange de crypto-monnaies est en train de se démarquer, mais il n'y a pas d'actifs, pas de portefeuille, pas de zone monétaire.Après l'inscription, il est nécessaire de vérifier la boîte aux lettres pour activer le compte.
Solution et utilisationCentre de contrôleJe ne sais pasOutils de débogageUtilisation dans les outils de débogagereturn
Les phrases renvoient le contenu qui doit être affiché, sans interrompre le contenu affiché.
JavaScript
Dans la stratégie$.
Je vais vous dire ce que cela signifie.$.
Les fonctions qui commencent sont les fonctions d'exportation du modèle, les fonctions d'interface similaires aux modules; voir la description dans la documentation API:https://www.fmz.com/api#%E6%A8%A1%E6%9D%BF%E7%B1%BB%E5%BA%93
python
La fonction d'exportation de la stratégie de version commence parext.
Il y a un autre problème.
Les graphiques finalement affichés lors de la réévaluation sont en deux types: l'un est généré par le système et ne peut pas être contrôlé par la politique; l'autre est une interface API avec FMZ dans le code de la politique.Chart
Le dessin fonctionnel.https://www.fmz.com/api#chart...
API KEY
SécuritéLes utilisateursAPI KEY
FMZ ne stocke pas les informations explicites des comptes d'échange des utilisateurs et est utilisé par les utilisateurs.Https
Les accords.
La question peut être posée à:https://www.fmz.com/bbs-topic/1657
Les critères de facturation en direct: 1, un disque réel est facturé une fois par heure ((0.05 USD/heure) et une heure de temps d'utilisation. 2, Arrêter dans une heure, redémarrer le disque ne sera pas chargé à nouveau. 3° Les jeux virtuels qui ont été arrêtés ne déclencheront pas de facturation dans l'heure suivante. 4° Les nouveaux disques virtuels seront facturés immédiatement à l'heure.
Ce temps de facturation est le temps de traitement des opérations de facturation, car ces opérations de facturation prennent du temps, de sorte que le temps de débit peut être retardé. Par exemple, le temps de facturation actuel est de 9h00, il est possible que le temps de traitement de cette opération de facturation soit de 9h02 (heure indiquée dans la capture d'écran) et sera corrigé lors de la prochaine opération de débit (le temps de débit suivant est de 10h00, pas de facturation anticipée).
Si les données sont extra-minoritaires, elles finissent par apparaître comme 0. Pour référence:https://github.com/TA-Lib/ta-lib-python/issues/157
Frais de facturation réels dans les programmes de facturation, frais de facturation ponctuels de plus d'une heure ((0.05USD) La raison peut être une interruption de communication à long terme entre le dépositaire et la plate-forme FMZ (lorsque le disque virtuel interagit directement avec l'échange, les stratégies d'exécution sont normales), l'accumulation de débit, les retards de débit, les débits uniques de paiement.
Boîte aux lettres lors de la réinscription Si le courrier est perdu pour des raisons telles que la nécessité de réinitialiser le courrier lié au compte FMZ actuel, il est nécessaire de soumettre des formulaires de travail avec ce compte FMZ, de soumettre des captures d'écran d'historique de chargement, etc. pour vérifier d'autres informations, et réinitialiser l'adresse du courrier après vérification manuelle.
Le numéro de téléphone:Le système détecte la session
Le numéro de téléphone:Le système détecte la session
Vg80771610Mon disque virtuel ne peut pas s'ouvrir
18803662506Comment le solde du compte a-t-il été transféré?
Le harceleurPourquoi le graphique de retracement affiche-t-il des positions de clôture et des positions d'ouverture en temps réel?
Il est mort.Futures_OP 4: 400: {"code":"50000","data":[],"msg:"Body can not be empty. "} affiche le message d'erreur ci-dessous
- Je ne sais pas.py est compatible avec sympy library?
XOWOXLe chargement
YingshuangBuy ((-1, 6): 400: {"code":-2022, "msg:"ReduceOnly Order is rejected. "} Quelle est l'erreur?
DXMtemps de repos
au coursGestionnaire
et8888Utilisation de la stratégie de langage de Mac, pour les clients qui ne sont pas à la hauteur de l'emplacement, l'invite à maintenir l'emplacement inverse puis à annuler la stratégie d'arrêt.
Je vous en prie.Bonjour, les inventeurs ont-ils une fonction encastrée de taux d'acquisition de fonds pour le retraitement?
Huangsongxin est une femme.Simulation
Il est négligent.J'aimerais vous demander, si vous obtenez des données de ligne K en temps réel, pourquoi les bibliothèques de dessins en python sont désordonnées, et si la vérification ne pose pas de problème.
- Je vais essayer.Traceback (dernier appel le plus récent): Fichier "
389230565/upload/asset/1e5e44ad18aab047782b6.jpg Le disque virtuel nouvellement ouvert affiche cette erreur quelques heures plus tard, pourquoi?
Cépages grillésComment puis-je obtenir les données historiques d'écriture de USDT pour les contrats Bitcoin U et ne pas trouver l'API?
Le numéro de série:Je ne peux pas recharger
Gaoyaxing24Y a-t-il une fonction de référence de classe dans Python?
- Je ne sais pas.Bonjour, une stratégie simple de ligne moyenne, lorsque vous êtes en cours d'exécution, il y a une période de fonctionnement normal, une période de signaux, connectez-vous, demandez de l'aide.
Il est mignon.Bonjour, lorsque les contrats à terme sont à la fois ouverts et vacants, position[0].profit ne peut obtenir que des gains et des pertes flottants de plusieurs positions, alors comment obtenir des gains et des pertes flottants de plusieurs positions?
Je vous en prie.Bonjour, je suis en train de faire le point.
Jeux de monnaieLa page Web, la connexion ne va pas, est toujours dans la connexion, le code de balayage de la connexion en 2D ne peut pas être affiché, est-ce la raison du navigateur. Ou avez-vous besoin d'une connexion scientifique?
Efc645cgxPourquoi les forums ne peuvent-ils pas publier?
ZhousoneLes hôtes publics peuvent-ils faire fonctionner des robots sur disque?
Plumes sur moutonsEst-ce que l'exchange.GetAccount (()) ne reçoit que la quantité initiale définie lors de l'examen? Si j'utilise l'exchange.buy dans la politique, le solde retourné ne sera pas mis à jour.
Le couteau à osJe n'ai pas vu la réponse à cette question.
le numéro de sérieS'il vous plaît, comment réparer cette situation?????
Le numéro de téléphone: 17606551005FMZ/upload/asset/175f0fef6971c19389a0c.png /upload/asset/17633f3636a154477bb5a.png /upload/asset/1764cf80d829ca5ed5a6e.png /upload/asset/17667f2629b47a011bb8f.png Vous pouvez télécharger les fichiers suivants: Pourquoi getposition n'a pas accès à des titres vides?
Je vous en prie.main:102:18 - TypeError: method.apply is not a function S'il vous plaît, quel est le problème?
les garde-corpsCertains modèles utilisent les fonctions _.each() _.contains() _.last() S'il vous plaît demander _. Où cet objet est-il défini?
Je vous en prie.Dans mon langage, comme si on pouvait juste attendre que la ligne k se termine pour entrer, ne pas pouvoir définir un prix, et essayer de dépasser ce prix pour entrer immédiatement?
Les années de lumièreDans la phase d'initialisation de la stratégie, vous voulez faire des tests de connectivité d'échange, d'efficacité d'API, comment écrire?
Je vous en prie.Les robots peuvent-ils se connecter à ces échanges murés comme Token et OK? Et si je suis en charge par un robot, est-ce que mon propre ordinateur a besoin d'être allumé 24 heures sur 24?
Je suis désolée.La description du problème est là... mais la réponse n'est pas là... ivre...
Je ne sais pas.Le robot démarre un rapport d'erreur
Traceback (most recent call last): Fichier "
- Je vous en prie.Dans quelles circonstances précises les multi-thèmes sont utilisés
Je vous en prie.Je veux savoir pourquoi, lorsque l'exchange.Buy ((-1,1) a refait ses tests, il n'a acheté que quelques pièces à chaque fois, au lieu d'en acheter une.
JeffzhSi ma stratégie nécessite de stocker les données de transaction pour une analyse ultérieure, comment est-il possible de stocker et d'analyser les données dans ma stratégie?
13036897450J'aimerais obtenir le rapport bénéfice/perte en temps réel des positions ouvertes dans les contrats ok et le prix de l'équilibre fort attendu.
13036897450GetOrders: Ret: map[result:false error_code:10007] Quelle est la raison de cela?
Le cygne jauneERR_INSUFFICIENT_ASSET et TypeError: Cannot convert "null" to double Quelle est l'erreur?
M. KoengEst-ce que vous pouvez expliquer ce que signifie l'arithmétique retournée dans TA.KDJ pour obtenir la valeur de K pour la valeur de D?
1095176636@qq.comJe veux supprimer les données, mais pourquoi est-ce que je les supprime à chaque fois que je les supprime?
- Je ne sais pas.J'ai essayé et j'ai vu que le temps d'arrêt était trop long. Où est-ce que tout le monde va louer un hôte?
1095176636@qq.comPourquoi j'ai fait un rappel des transactions historiques en BTC en nombres entiers et en rangées de différences égales?
Pourquoi?2018-07-23 09:58:40 Erreur TypeError: ne peut pas lire la propriété 'Last' de null à main (__FILE__:5) 2018-07-23 09:58:40 Futures_OKCoin erreur GetTicker: temps d'arrêt 2018-07-23 09:58:20 info null BTC_USD Nom de l'équipe Le robot s'allume à vide.
Chan122J'aimerais qu'il y ait un cycle de jugement de cinq minutes pendant le retest et que les données s'épuisent rapidement.
le roshanzhengJ'aimerais savoir comment la plateforme assure la sécurité des identifiants d'échange et des clés de l'utilisateur, par exemple en évitant que des pirates d'identité et des clés d'échange en vrac ne soient capturés et les instructions de transaction ne soient piratées.
Je suis étonné.Comment python obtient-il le temps de retouche?
Je suis désolé.S'il vous plaît, expliquez pourquoi simnow affiche: ((CTP_T@9999) Error: 75 CTP: le nombre de connexions en continu a dépassé la limite, la connexion est interdite.
- Je vous en prie.Mark, le numéro quatre, où est-ce que je peux voir?
Wcg123S'il vous plaît, expliquez-moi pourquoi l'indicateur CCI calculé est toujours différent de 1 à 3 valeurs de l'indicateur de l'okex, alors que les autres indicateurs sont corrects.
Carpédium 6740IP invalide ou incompatible avec l'IP liée
À la chevilleComment obtenir une information d'ordre lors de l'analogie? Comment faire si Exchange.GetOrder ne dispose pas de l'ID de l'ordre?
- Je ne sais pas.L'accès à l'API originale de Binance peut être réalisé avec une fonction IO
L'inventeur de la quantification - un petit rêveBonjour, vous pouvez envoyer votre demande d'emploi, en y joignant une capture d'écran spécifique, pour vous aider à le voir.
L'inventeur de la quantification - un petit rêveIl est possible d'envoyer une demande.
L'inventeur de la quantification - un petit rêveLe mécanisme des variables déclarées par var est différent de celui de varip, qui vous répond dans le formulaire de travail.
Le harceleurJ'ai essayé deux façons de sortir, l'une consiste à accrocher directement à l'ouverture de la commande, le code est le suivant, en remontant à la figure 1. si la stratégie.position_size >= 0 et la tendance < 0 et TCI_bear La stratégie.entry (en anglais seulement) est une stratégie qui consiste à déployer des informations sur les systèmes de gestion des données. Je ne suis pas d'accord avec ce que vous dites. Donc, il y a une différence. trading_1: = 0 L'autre est l'exit, qui utilise la méthode de recherche d'ordres après l'entrée, le code est le suivant ((Curiosement, cette méthode ne fonctionne pas directement avec l'exit ((Retour à la figure 2), la fonction de recherche d'ordres est copiée directement de l'article)) if barstate.isrealtime et findOrderIdx (("SHORT") >= 0 and state == -1 Cette fonctionnalité est utilisée par les utilisateurs de la plateforme pour obtenir des informations sur les paramètres. l'état est égal à 0. La stratégie est basée sur le principe de l'équilibre entre les actifs et les actifs. Il y a aussi une autre chose, je ne sais pas pourquoi le même signal est passé trois fois de suite, le code est le suivant: si trading_1 == 0 and Trend == -1 et TCI_bear et stratégie.position_size < 0 La stratégie.entry (("IP-S1", strategy.short, qty=size) est une application de stratégie qui permet aux utilisateurs de télécharger des fichiers sur Internet. trading_1 := -1 Les rêves aident toujours à voir ce qui se passe.
L'inventeur de la quantification - un petit rêveIl s'agit de la conception d'une stratégie spécifique, voir l'analyse de la stratégie.
L'inventeur de la quantification - un petit rêveBonjour, c'est précisément l'échange, le code d'appel d'IO, qui peut envoyer une facture pour un scénario spécifique.
- Je ne sais pas.Ça va, merci.
L'inventeur de la quantification - un petit rêveIl est recommandé d'utiliser des hôtes privés pour installer les bibliothèques python nécessaires sur votre propre appareil.
- Je ne sais pas.J'ai essayé de faire comme si je ne supportais pas sympy, j'ai écrit simplement import sympy comme ça.
L'inventeur de la quantification - un petit rêveBonjour, vous pouvez importer n'importe quelle bibliothèque python, il est nécessaire d'installer cette bibliothèque dans l'environnement python du système sur lequel l'hôte est installé.
L'inventeur de la quantification - un petit rêveBonjour, quelle est la question spécifique?
L'inventeur de la quantification - un petit rêveIl se peut que la direction indiquée ci-dessous soit incorrecte. Vérifiez les paramètres de la fonction SetDirection.
L'inventeur de la quantification - un petit rêveC'est un problème avec votre réseau d'appareils. Essayez de changer d'autre appareil comme VPS à Singapour ou en Angleterre.
L'inventeur de la quantification - un petit rêveIl y a aussi d'autres paramètres à vérifier, tels que la précision, voir l'article: https://www.fmz.com/digest-topic/5768
et8888Le point de glissement est fixé à 5.
L'inventeur de la quantification - un petit rêveSi le point de glissement est trop petit, vous pouvez ajuster les paramètres de la bibliothèque de modèles de Mac.
L'inventeur de la quantification - un petit rêveLes groupes QQ et WeChat sont désormais dissolus et vous pouvez cliquer sur le lien de télégramme pour ajouter le groupe sur la page d'accueil de FMZ.
Je ne sais pas.Quel est le nombre de qq?
L'inventeur de la quantification - un petit rêveIl n'existe pas d'interface d'accès au taux de change pour les échanges en direct, à l'exception des contrats à terme Bitcoin, BitMex et autres.
Il est négligent.Je l'ai regardé comme si c'était le cas, et j'ai pensé que c'était en accord avec les données du disque.
L'inventeur de la quantification - un petit rêveSi vous regardez le tableau de bord de l'échange, il se peut que la ligne K soit elle-même comme ça.
Il est négligent.Je ne peux pas vous dire ce que je fais. Le problème, c'est qu'il n'y a pas beaucoup d'options qui permettent d'obtenir des disques OUI.
L'inventeur de la quantification - un petit rêveIl est possible de voir des captures d'écran de problèmes spécifiques, de scènes spécifiques.
L'inventeur de la quantification - un petit rêveUne erreur de syntaxe de la stratégie, vérifiez la ligne 115 du code de la stratégie.
L'inventeur de la quantification - un petit rêveLes images ne peuvent pas être affichées.
L'inventeur de la quantification - un petit rêveLe prix de transmission-1 est le prix réel du marché.
Cépages grillésDonc, en fait, les fonctions comme exchange.Buy (), etc. sont en fait des fenêtres de prix limitées, pas des fenêtres de prix du marché. Si le prix fluctue trop rapidement, il est difficile de passer une transaction après la commande. Quel paramètre peut-on définir pour en faire une liste de prix du marché?
L'inventeur de la quantification - un petit rêveC'est possible, mais la fréquence d'accès à l'interface doit être prise en compte.
Cépages grillésPour la même interface, par exemple cette méthode GetTicker, puis-je demander à cette interface fonction pour 10 paires de transactions différentes en même temps?
L'inventeur de la quantification - un petit rêveVous pouvez parcourir la documentation de l'API ou le commissaire à la cryptographie en 2D de WeChat sur la page d'accueil pour vous aider.
L'inventeur de la quantification - un petit rêveLe traitement de WeChat en code 2D d'entreprise peut être effectué en ajoutant une documentation d'API au début.
Gaoyaxing24J'ai essayé de le faire, mais j'ai toujours eu des erreurs, je n'ai pas trouvé de méthode disponible dans ext. Je n'ai pas trouvé de méthode dans dir.
L'inventeur de la quantification - un petit rêveOui, vous pouvez consulter la documentation de l'API pour une description en trois langues.
L'inventeur de la quantification - un petit rêveVous pouvez aller sur la page d'accueil de FMZ et ajouter des groupes FMZ, QQ et WeChat, où vous pouvez poser des questions spécifiques et envoyer des captures d'écran spécifiques.
Il est mignon.C'est clair, merci pour le rêve.
L'inventeur de la quantification - un petit rêveJe ne comprends pas vraiment ce que tu veux dire, mais dans le groupe QQ @me, regardez-le plus précisément. Le code ci-dessus vous permet de continuer à accéder à la position[1] si vous avez un cache d'en-tête.
Il est mignon.Il y a des positions en cache, et dans ce code, il y a plusieurs positions et des positions blanches en même temps, et les données dans les positions sont parcourues, mais pas les données en cache.
L'inventeur de la quantification - un petit rêveIl n'y a pas d'emplacement vide, le gain ou la perte d'emplacement vide est-il nul? Il n'est pas nécessaire de calculer. Si vous ne comprenez pas le concept de parcourir, vous pouvez le faire.
Il est mignon.Non, il n'y a que des données multi-entrepôts qui sont accessibles, pas de données vides, le code source. Var n est égal à 0,005 var MarginLevel = 20 // Le levier du contrat fonction main (() { Le type de contrat est le suivant: Exchange.Set MarginLevel (Le niveau de la marge) Var position = [] pendant (true) { Var account = exchange.GetAccount (en anglais seulement) position = exchange.GetPosition (en anglais) si (position.length == 0) { Exchange.SetDirection (en anglais seulement) exchange.Sell ((-1, n, "ouverture", "paramètres de multiplication:", q = 1, "total du compte:", account.Balance) Exchange.SetDirection (en anglais seulement) exchange.Buy ((-1, n, "plus", "paramètres de multiplication:", x = 1, "total du compte:", account.Balance) Je ne sais pas. Si (position.longueur > 0) { Log (position [0]) Sleep (en anglais seulement) Je ne sais pas. Je ne sais pas. Je ne sais pas.
L'inventeur de la quantification - un petit rêveGetPosition renvoie une matrice avec une structure de stockage vide et une structure de stockage multiple.
L'inventeur de la quantification - un petit rêveQuel est le point?
L'inventeur de la quantification - un petit rêveSi l'appareil est allumé avec une échelle, éteignez-la et essayez-le.
L'inventeur de la quantification - un petit rêveVous pouvez poster un article. Mais ne le faites pas, le cas échéant, vous serez scellé.
L'inventeur de la quantification - un petit rêveLes hôtes publics sont généralement utilisés pour des tests, des exercices, et il est recommandé d'utiliser votre propre matériel pour exécuter les hôtes.
Le couteau à osC'est moi qui suis trop âgé -'', les personnes âgées regardent les caractères, la police de navigateur est trop grande, une page ne voit que le côté des questions et des réponses, ne montre pas le côté des réponses.
L'inventeur de la quantification - un petit rêveLe montant de l'impôt sur le revenu est calculé à partir du montant de l'impôt sur le revenu.
L'inventeur de la quantification - un petit rêveIl y a un problème avec le fait que les gens ne sont pas d'accord avec la façon dont nous avons construit le marché, c'est-à-dire qu'il faut éliminer les positions qui sont sur le point d'être livrées, et qu'un nouveau contrat principal doit ouvrir les positions.
le numéro de sérieLe montant de la contribution est fixé à l'ordre du jour suivant la date d'échéance.
L'inventeur de la quantification - un petit rêveJe n'ai pas compris ce que tu veux dire par "déplacement" et "déplacement"
Le numéro de téléphone: 17606551005FMZJe comprends. Merci.
L'inventeur de la quantification - un petit rêveIl n'y a pas de transaction. Il n'y a donc pas de stock.
L'inventeur de la quantification - un petit rêveLe code de la ligne 102 ci-dessus (y compris la ligne 102) est utilisé pour vérifier si c'est une fonction _C.
L'inventeur de la quantification - un petit rêveJS est une bibliothèque.
L'inventeur de la quantification - un petit rêveVous pouvez configurer le langage Mac: Paramètres de la bibliothèque de transactions Mac, mode d'exécution: modèle de prix en temps réel /upload/asset/166d993a8809d6f7f518.png Vous pouvez télécharger le fichier
L'inventeur de la quantification - un petit rêveLe site officiel de l'émission est le site officiel de l'émission.
L'inventeur de la quantification - un petit rêveCes échanges murés, généralement avec un serveur étranger, utilisent un dépositaire, qui est ensuite attribué à un robot pour qu'il fonctionne, de sorte que l'ordinateur local n'a pas besoin de rester ouvert, car les programmes robotiques sont exécutés sur le serveur où se trouve le dépositaire.
L'inventeur de la quantification - un petit rêveJe suis désolée.
Je suis désolée.Oh, c'était dans le fond, merci!
L'inventeur de la quantification - un petit rêveLa cause du problème est indiquée ci-dessous: Vérifiez si les autorisations de l'API sont activées.
Je suis désolée.Les résultats de l'enquête ont été publiés par le site Web de l'entreprise. Numéro spécifique 72
L'inventeur de la quantification - un petit rêveQuel est le problème? Quel est le numéro?
Je suis désolée.Où le voir?
Je suis désolée.Il y a des problèmes qui n'ont pas de solution.
L'inventeur de la quantification - un petit rêveQuel problème?
L'inventeur de la quantification - un petit rêveSi vous utilisez python, vous avez importé une DLL avec ce nom aléatoire, aléatoire en raison d'un ensemble de caractères.
Le foinCela permet d'économiser du temps en accédant à plusieurs interfaces en même temps.
L'inventeur de la quantification - un petit rêvePour plus de détails, consultez la description de la liste de prix sur la documentation API, la liste de prix.
L'inventeur de la quantification - un petit rêveSauvegarder avec la fonction _G Pour plus de détails, voir la documentation de l'API.
L'inventeur de la quantification - un petit rêveIl faut écrire un programme pour cela. Vous pouvez accéder à l'interface GetPosition pour consulter les informations de base, qui devraient contenir des données pertinentes.
L'inventeur de la quantification - un petit rêveCe 10007 est le code d'erreur de l'échange, https://www.fmz.com/bbs-topic/597.
L'inventeur de la quantification - un petit rêve1, `` ` ERR_INSUFFICIENT_ASSET ` ` ` C'est un manque d'actifs qui est sous-estimé. TypeError: Cannot convert "null" to double`` This is the Pass Parameter Passé par erreur, le paramètre requis est un type numérique, passe par valeur nulle nulle. Ce mot, traduit littéralement par bauda, est probablement connu.
L'inventeur de la quantification - un petit rêveVous pouvez consulter la rubrique Inventors Know: https://zhuanlan.zhihu.com/p/27300549 Cet article.
L'inventeur de la quantification - un petit rêveQuel est le problème?
L'inventeur de la quantification - un petit rêveIl devrait y avoir beaucoup de VPS sur Baidu, Amazon, Ali Cloud, dans d'autres régions, etc.
L'inventeur de la quantification - un petit rêveQuel est le type d'interface spécifique? L'interface en profondeur dans le système de retouche est une donnée d'analogie, à l'exception de la première classe. Il y a aussi d'autres données qui ne sont pas cruciales mais simulées.
L'inventeur de la quantification - un petit rêveIl s'agit d'un cryptage asymétrique, si vous conservez votre mot de passe FMZ, mais il y a des problèmes de sécurité et de technologie de base, trop de détails ne peuvent pas être donnés, merci.
L'inventeur de la quantification - un petit rêveVous utilisez le paquet sleep de Python?
Chan122Le temps de réponse est de 300 secondes.
L'inventeur de la quantification - un petit rêveIl y a aussi des sites comme Amazon.com.
Pourquoi?Comment le résoudre Vous utilisez directement un serveur étranger?
L'inventeur de la quantification - un petit rêveL'accès à l'OKEX n'est actuellement possible que sur les serveurs étrangers.
L'inventeur de la quantification - un petit rêveVous pouvez suivre les mises à jour de la ligne K pendant 5 minutes et sauter le reste du temps en utilisant Sleep.
Le foinLes conditions sont trop sévères.
Le foinles clés API sont cryptées avec un mot de passe en clair, vous devez entrer un mot de passe lorsque vous saisissez une clé, les botvs ne sont pas cryptés, donc pas de problème
L'inventeur de la quantification - un petit rêveEh bien, merci pour votre suggestion, le développement de mécanismes de sécurité, etc. est une autre responsabilité, ce dont je ne suis peut-être pas très clair.
Le vieux chat aime manger du poisson.Le code source est utilisé pour le déchiffrement, c'est-à-dire le cryptage symétrique. Lors du téléchargement de la clé api, le mot de passe botvs est entré pour le chiffrement. Lors du déploiement des hôtes, le mot de passe du botvs est toujours entré pour le déchiffrement. Si l'apkey crypté stocké par le botvs est divulgué, il est possible de déchiffrer le message explicite pour obtenir la clé en obtenant le mot de passe du botvs de l'utilisateur. Ce n'est pas sûr. Nous recommandons de remplacer la clé privée par une clé publique asymétrique. Les clés publiques sont utilisées pour les téléchargements cryptés, les clés privées sont uniquement dans les mains des utilisateurs et ne sont utilisées que lors du déploiement des hôtes.
L'inventeur de la quantification - un petit rêveLe BotVS n'est pas symétrique, il ne stocke pas de clavier API KEY, utilisé pour le déchiffrement local du serveur utilisateur. À moins que le serveur utilisateur ne soit noirci ou que le mot de passe de l'utilisateur ne soit divulgué.
Le vieux chat aime manger du poisson.Merci pour votre réponse. En savoir plus sur le processus d'utilisation de l'API Key: 1, nous saisissons les clés d'API sur le site web de botvs et les soumettons; 2°, une fois crypté, il est transmis via https au serveur botvs et sauvegardé; Le serveur botvs, qui envoie les clés de l'API cryptées à l'hôte. 4° Le gestionnaire décrypte la clé d'API reçue localement pour se connecter à l'échange correspondant. C'est donc un cryptage symétrique. C'est-à-dire que si le serveur de botvs est piraté, ou si des problèmes d'éthique professionnelle sont rencontrés par des employés internes, la clé sera divulguée. Je comprends bien? Si c'est le cas, il est recommandé de passer à une cryptographie asymétrique pour conserver la clé. Les utilisateurs entrent une clé privée auprès de l'administrateur pour démarrer la connexion.
L'inventeur de la quantification - un petit rêveLe site officiel de l'organisation est actuellement en cours de mise à jour.
L'inventeur de la quantification - un petit rêveLe site officiel de l'organisation est actuellement en cours de mise à jour.
Le vieux chat aime manger du poisson.Je suis un vieux chien de code de botvs qui vient de se connecter et je demande.
L'inventeur de la quantification - un petit rêveL'heure actuelle est écrite comme ça dans le code Python. Je ne sais pas. Temps d'importation Définition principale: Log (("l'heure actuelle:", _D ((time.time))) # Produit l'heure actuelle。 Je ne sais pas.
L'inventeur de la quantification - un petit rêveC'était impoli.
Carpédium 6740C'est ce problème qui a été résolu, merci
L'inventeur de la quantification - un petit rêveIl s'agit probablement d'une erreur de configuration de mot de passe ou d'un nombre de connexions dépassant la limite, veuillez contacter le service client simnow pour demander le déblocage. Si vous modifiez le mot de passe de BotVS, celui-ci est désactivé et doit être reconfiguré.
L'inventeur de la quantification - un petit rêveIl est possible que certains indicateurs utilisés par OK soient différents de ceux utilisés par Talib.
L'inventeur de la quantification - un petit rêveLe problème devrait être que l'adresse de la liste blanche a été définie lorsque vous avez demandé l'API KEY de l'échange, puis que vous avez effectivement créé un robot. L'adresse IP utilisée pour accéder à l'API KEY de l'échange n'est pas sur cette liste blanche, vous pouvez vérifier les paramètres lors de la demande de l'API KEY ci-dessous.
L'inventeur de la quantification - un petit rêveSi vous n'avez pas d'identité, vous ne savez pas quelle commande vous voulez demander.