[TOC]
常见问题汇总(持续更新…)
搜集常见问题方便查看,如何在帖子上搜索关键字?
使用Ctrl + f
键打开页面搜索,输入关键字例如:“托管者”。那么页面上关于有托管者字样的位置都会搜索出来。
目前FMZ国际站仅支持数字货币业务。
微信:
GetTicker
和GetDepth
得到的买一价和卖一价会不同呢?
- ```exchang.GetOrders```得到的是未成交的挂单,那么已经成交的单子在哪里获取?
查询订单还有一个API就是```exchange.GetOrder```,这个是根据```ID```查询所有类型的订单。输入订单```ID```就查出这个订单。获取成交的订单只有看交易所有没有提供这样的接口了,每个交易所可能提供的接口都不一样。
- ```JavaScript```策略时间字符串转时间戳的结果不对
需要考虑系统时间设置中的时区。

- 为什么我打印出来的开盘价、收盘价都一样?
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,或者如图点击链接:

- 为啥```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函数
Mail(“smtp.qq.com”, “[email protected]”, “xxx”, “[email protected]”, “test title”, “test body”)
访问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()
检查策略代码编辑区是否有错误提示,检查是否var name = “a” 的时候忘记写name(没有写变量名)。检查是否设置策略界面参数时使用了编程语言的关键字,不建议对变量命名使用编程语言常见的关键字,容易引起冲突(即使当前编程语言中没有这个关键字)。
BITMEX
429错误,{"error":{"message":"Rate limit exceeded retry in 1seconds……"}}
看到429错误,即访问交易所接口频率过高。需要增加轮询间隔,降低访问接口频率。
Bittrex
报错:{"success":false,"message":"NOT_ALLOWED","result":null}
交易所限制了权限,登录一下Bittrex
交易所网站,查看是否需要勾选用户协议之类的信息。
TypeError:value has no property at
回测和实盘时报错信息不一样,所以回测测不出这个报错信息。
unable to open database
报错
如果是苹果电脑
Mac OS
注意查看是否为权限问题。
设备硬盘空间满了,无法创建实盘的数据库文件,导致报错。
不支持该功能
回测时添加的交易所对象为数字货币现货交易所,代码中调用了期货的API函数。
in SetCurrency OSError: exception: access violation reading 0x000000FCF25F0000
数字货币期货,Python
策略,回测系统使用私有托管者,代码中切换了交易对报错。
原因是回测系统不支持数字货币期货回测切换交易对。
报错 decrypt
[图片]
由于修改了FMZ账号的密码, 导致配置的API KEY失效,引起的报错。
解决办法:重新配置交易所API KEY ,停止托管者,重新启动托管者,再尝试启动实盘。
Python
本地回测引擎,报错EOFerror
。
```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))
原因是计算周期参数超出,数据范围,导致计算出N/A值。处理办法:
可能是早期麦语言模板的问题。处理办法:1.导出策略为xml文件。2、创建一个新的空的麦语言策略。3.把xml文件导入到新创建的空策略中。4、创建实盘测试即可。
fatal error:unexpected signal during runtime execution...go routine 11[syscall,locked to thread]
检查C++
编写的策略有没有使用空指针,建议用容错模式回测检验。
exchange.SetMarginLevel(10)
报错:Futures_OP 0:403:{"error":{"message":"Access Denied","name":"HTTPError"}}
检查交易所申请的API KEY
相关权限是否开启。
symbol not set
期货交易所回测代码中没有设置合约,参看API文档中exchange.SetContractType
函数。
ERR_INVALID_POSITION
错误回测系统报错,一般为策略编写错误。在没有持仓或者持仓数量不足时尝试下单平仓会引起该报错,检查是否有未成交订单导致的仓位冻结。
ERR_INVALID_ORDER
错误回测系统报错,一般为策略编写错误,注意检查下单价格(回测系统数字货币期货暂时不支持市价单),下单量是不是为0或者负数或者小数(期货合约是合约张数都是整数)。
ERR_INSUFFICIENT_ASSET
错误回测系统报错,一般为可用资产数量已经不足当前下单需要的资产数量。简单说就是没有资金下单了。
Binding Error:Cannot passnon-string to std::string
报错信息策略代码中,一般为某个属性名(使用未定义的属性)用错导致。
{"status":6004,"msg":"timestamp is out of range"}
错误服务器时间戳超出范围需要更新服务器时间,不能偏差过大。
timeout
错误该错误是超时错误,是指访问交易所接口后超过一定时间没有得到交易所接口应答数据导致的报错。一般是托管者所在系统的网络访问问题(很多是墙导致的问题)、或者是交易所接口的问题。一般解决办法:使用其它海外地区的服务器运行托管者。
syntax error invalid label
问题根源:
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```错误

这个报错是说```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(太多请求) 报错

```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权限是否给与正确。权限是英文逗号间隔,默认是\*,即所有权限,不要直接在\*后面写给与权限的函数名。
- 创建实盘时交易所对象配置上为什么只有有限的几种货币对?实际交易所是支持很对交易对的。
设置交易对的自定义控件(只有实盘可以,回测时数据中心的数据只有有限的品种,并不能自定义设置),如图:

- 为什么在服务器上运行FutuOpenD(富途)获取不到行情,在本机上的可以获取到?
检查服务器是否是海外IP地址,富途对于海外IP有限制。
- 麦语言策略运行了一直不动,就开始更新了一下行情,是什么问题?
检查是不是使用的收盘价模型,检查设置在策略麦语言模板参数上。
- ```BITMEX```交易所K线数据时间戳为什么比其它交易所相同位置的Bar多一个周期时间?
原因是```BITMEX```交易所的K线时间戳是以当前Bar的结束时间作为时间戳的(有些K线周期```BITMEX```交易所接口没有支持,所以这些周期的时间戳是以Bar起始时间作为时间戳的)。例如右图:

## 回测系统
- 回测系统报错: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.
检查是否使用了「自定义数据源」功能,自定义数据源服务提供的数据是否正确,引发该报错的原因可能是异常的回测行情数据。
- 如何测试手续费是taker/maker?
手续费 taker/maker 测试场景
/*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)
}
}
- 币安期货、```BITMEX```回测,资金费率是否算入回测系统生成的盈亏曲线?
资金费率是算入回测系统生成的盈亏曲线的。
- 回测按钮显示不可点击

检查是否开了代理,导致回测页面文件加载不完整,检查页面控制台是否有报错信息。
- **实盘级Tick**回测时,为什么有50MB的限制?
实盘级别回测, 就是这个实盘级Tick, 行情数据是逐秒的,真实记录。 并且还有盘口快照, 订单流数据, 这些数据量非常大, 只支持 50MB的数据量。 也就是说 实盘级别回测 ,范围最多几个小时, 无法长时间范围回测。主要用于测试高频策略。
- 回测系统修改了手续费,为什么不起作用?

回测系统中,界面上设置手续费,只有添加上才生效,之前添加的交易所对象是无法通过界面上的控件直接修改的。
- 怎么才能让回测自定义画图显示的数据多一点?
自定义图表画图时(```Chart```函数),画图在回测时候显示的数据量和回测设置上的**图表**参数有关,控制图表显示最大条数。注意是否使用了```chart.reset```函数清空了部分旧数据。
- ```C++```回测什么都不显示,也没有报错信息和日志,点击按钮后页面没有变化
```C++```策略一些异常不抛出错误,用排除法逐级检查代码可能的运行时错误。例如:指标计算时K线数量不足导致的指标算出```NAN```后```NAN```和数值类型做比较判断,引起程序崩溃。
- ```python```回测卡死!
不能在```try```异常检测里面写```Sleep```函数,如图的写法就会卡死。

- 为什么回测的时候只有几个交易所,交易所的交易对也只有有限的几种?
交易所的交易对太多了,所以在回测系统只选择了几种有代表性的交易对用来测试。可以选择情况相近的交易对回测,在实盘的时候是完全可以用**自定义控件**设置交易所支持的交易对。
- 回测系统为什么不支持多些交易对?
回测系统暂时只支持一些比较大的交易所的主流币种,有些币种暂时还没支持。如果需要检验策略可以在回测系统中用其它币种代替测试。其实数字货币用不同币种测试除了行情因素,对于检验策略还是可以的。简单说就是回测系统尽量把主流交易对支持,回测不应当拟合具体某个品种。就是说如果策略有效,哪怕是一系列有交易规律的随机生成的行情变动,或者是其它币种行情,都应该是有基本上正向收益的的表现。这个就是策略的普适性,如果只能拟合一段历史数据或者在某个品种表现不错,那这种策略实际上是有潜藏风险或者有缺陷的。
- 回测系统中:**平仓盈亏**、**持仓盈亏**、**保证金**、**预估收益**、**当前可用的USDT**的概念
平仓盈亏:就是当前持仓之前的所有交易开仓,平仓时,产生的盈亏,是所有累计的盈亏。
持仓盈亏:就是当前持仓的盈亏,如果当前没持仓,就是0
保证金:当前持仓的仓位占用的保证金数额
预估收益:把当前持仓按照当前价格(假设)平仓,产生的盈亏,再和平仓累计的盈亏相加,算出预估的收益。
当前可用的USDT:当前可以用来开仓的USDT数额。
- 回测系统胜率计算
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 } } }
上面是胜率算法,描述一下是这样计算的:
在回测系统定时计算浮动盈亏后,统计出一条浮动盈亏曲线。从第一个点开始对比下一个点,如果高于则记录为胜,低于记录为负,然后用下一个点往后继续对比。
## 托管者
- FMZ平台上托管者显示离线,服务器上托管者robot程序被停止
在linux操作系统,有可能内存不足导致托管者被系统停止。触发原因:
1、策略过度使用硬件资源。
2、策略Log输出了一个非常大的内容。
3、托管者所在设备上运行了过多的策略实盘。
4、其它(补充中)
- MAC电脑运行托管者时报错:dyld: cannot load (load command is unknown)
dyld: cannot load (load command is unknown) “`
操作系统版本太低导致。
Linux
系统的托管者部署的视频在哪儿?B站链接:https://www.bilibili.com/video/BV1eZ4y1c73v?share_source=copy_web
robot
程序,然后重新运行?可以不停止托管者,直接删除旧的robot
程序文件,然后下载新的压缩包,解压缩出新的robot
程序文件,放在原来的位置。这个时候托管者就更新了,但是运行中的实盘在内存使用的还是旧版本,只有重启实盘的时候才会使用最新的版本。
Linux
服务器托管者部署Linux
安装托管者步骤:https://www.bilibili.com/video/BV1eZ4y1c73v?share_source=copy_web
screen
运行托管者程序robot
时,出现-bash:screen:command not found
,托管者运行不起来。Linux
系统没有安装screen
软件,一般安装即可。CentOS
系统的安装命令:yum install screen
。
当前托管者已经支持SSH
断开转入后台运行。可以不使用screen
这个工具,在托管者程序robot
目录下直接使用命令:./robot -s node.fmz.com/xxxxxxx
,然后输入FMZ的账号密码后显示Login OK
即为部署成功。注意./robot -s node.fmz.com/xxxxxxx
中的xxxxxxx是每个FMZ账号唯一的识别码,输入自己的即可(在账号登录后跳转托管者页面,点击添加托管者,跳转到添加托管者页面可以看到),这里并不是要输入xxxxxxx
。
在托管者程序所在目录logs
文件夹内的DB3
数据库文件中,数据库文件名为实盘的id
,扩展名为db3
。
Linux
系统下./robot -l
查看托管者支持的交易所名称,里面出现的exchange
是什么交易所?名字为exchange
的交易所对象代指通用协议接入的交易所,通用协议详情:https://www.fmz.com/api#%E9%80%9A%E7%94%A8%E5%8D%8F%E8%AE%AE
添加的托管者超过5个会出现按列表显示的控件。
平台提供的公共托管者为初学者用户增加的一个快速上手的工具。学习时不用部署托管者了,方便上手。不过真正实盘测试还是推荐使用私有托管者,毕竟公共托管者的硬件资源、网络都是共享的,并且平台可能不定期维护这些公共托管者。
./robot -s node.fmz.com/1234567
)是我自己唯一的还是?这个地址是每个用户自己的地址标识,每个用户/1234567
部分的数值都是唯一的,用来标识用户。部署托管者的时候从控制中心->点击添加托管者按钮->添加托管者页面,然后就能看到这个地址,直接复制、粘贴就可以使用了。
python2.7
了,为什么还提示找不到环境变量。windows
系统初次安装python
,设置环境变量后需要重启生效。
python回测是靠EOF异常结束回测的(因为有时候可能策略是个死循环)。所以提示EOF异常是正常情况。
并不限制数量,具体看服务器配置和策略复杂程度,具体要考虑这多个实盘是否都访问相同的交易所接口(考虑接口调用频率,实盘越多频率越高),一般5-6个实盘没问题。
https://www.fmz.com/digest-topic/7542
实盘、托管者页面内容全部消失,实盘在正常运行,托管者在服务器正常运行。
检查浏览器报错信息,是否浏览器安装有插件,插件引起的全局变量污染问题。处理办法为写在浏览器插件,或者使用一个没有安装任何浏览器插件的浏览器登录FMZ。
租用的策略不会自动续费,一键部署的托管者服务器会自动续费。
FMZ API
文档中的说明:https://www.fmz.com/api#%E6%A8%A1%E6%9D%BF%E7%B1%BB%E5%BA%93
wexApp
仿真交易所,只能选BTC_USDT
吗?我怎么自定义其它交易对呢?wexApp
模拟盘暂时只支持几个主流的交易对,并非所有交易对都有模拟。
可以创建多个FMZ平台的扩展API KEY
,用于并发请求。
调试工具执行时,如果第二次什么都没有修改会保留之前创建的交易所对象,不会释放。所以一些状态会记录例如交易所对象当前为币币模式还是杠杆模式。
wexApp
模拟交易所登录上去,什么资产都没有,钱包和币币区都没有资产?注册后需要验证邮箱激活账户,在个人中心激活账户即可。
解决办法,使用控制中心的调试工具,调试工具中使用return
语句返回需要显示的内容,不会截断内容显示。
JavaScript
策略中$.
开头的函数是什么意思?$.
开头的函数是模板的导出函数,类似模块的接口函数。参看API文档中的描述:https://www.fmz.com/api#%E6%A8%A1%E6%9D%BF%E7%B1%BB%E5%BA%93
python
版策略的导出函数开头是以ext.
声明的。
回测时最终显示的图表分2种:一种是系统生成的,策略无法控制。另一种是策略代码里面用FMZ的API接口Chart
函数画的。参看:https://www.fmz.com/api#chart...
API KEY
安全保障用户的API KEY
是在浏览器端加密上传,FMZ并不保存用户交易所账户的明文信息,并且使用的是Https
协议。
该问题可以参看:https://www.fmz.com/bbs-topic/1657
实盘计费标准: 1、一个实盘一小时计费一次(0.05 USD/小时),买断一小时使用时间。 2、一小时内停止、重启实盘不会重复计费。 3、已经停止的实盘,下一个小时不会触发计费。 4、新创建的实盘会立即计费一小时。
该计费时间为计费操作处理时间,因为这些处理操作会耗时,所以扣费时间有可能往后延迟。例如当前计费时间为9:00,有可能处理这个计费操作的时间为9:02(截图上显示的时间),会在下一次扣费操作时矫正(下次扣费时间为10:00,并非提前计费)。
如果数据特别小会被截断,最终显示为0。 参考:https://github.com/TA-Lib/ta-lib-python/issues/157
计费项目中实盘扣费,一次性扣除超过一小时计费(0.05USD) 原因可能为托管者和FMZ平台长时间通信断开(期间实盘是直接和交易所交互的,所以执行策略是正常的),扣费累积,扣费延迟,一次性结算扣费导致。
重置注册时的邮箱 如果邮箱丢失等原因,需要重置当前FMZ账号绑定的邮箱,需要使用该FMZ账号提交工单,提交历史充值记录截图等其它信息验证,人工审核之后重置邮箱地址。