Test de retour et test de disque dur choisissent l’échange en direct OKCoin
Voir la documentation de l’API
Buy(Price, Amount) 下买单, Price为买单价格,Amount为数量, 返回一个订单ID
可以跟多余的参数做为附加消息显示到日志, 如exchange.Buy(1000,0.1, "OK", 123)
支持现货(火币/BitVC/OKCoin/OKCoin国际/OKCoin期货/BTCChina/BitYes)市价单, 市价单价格指定为-1
exchange.Buy(1000), 指买市价1000元的币, BTCChina例外exchange.Buy(0.3)指市价买0.3个币
Voici le code source du test:
function main() {
var ticker = null; // 用于获取ticker 行情。
Log("initAccount:", exchange.GetAccount()); // 获取初始账户信息。
Log("ticker:", ticker = exchange.GetTicker()); // 获取并打印行情
Log("3000元 预计买到 Amount:", 3000 / ticker.Last); // 计算下 Amount 传入 3000 预计按照当前的行情可以买入的数量。
exchange.Buy(-1, 3000); // 使用市价单, 在参数 Price 传入 -1 , 第二个参数 Amount 回测系统中为 法币。
Log("nowAccount:", exchange.GetAccount()); // 显示当前账户信息,用于对比 实际买入的数量。
}
Voici le résultat:
Remarque: le paramètre Amount utilisé lors de la détection est le franc.
On peut voir que l’inventeur quantifie le disque analogique qui n’est pas pris en charge par le prix du marché.
function main() {
var ticker = null;
Log("OKCoin 允许的BTC最小交易量:", 0.01); // 显示一下 OKCoin 允许的最小交易量
// GetMinStock 函数已经废除, 需要使用一个 变量代替 最小交易币数(或者设置成 界面参数)
Log("initAccount:", exchange.GetAccount());
Log("ticker:", ticker = exchange.GetTicker());
exchange.Buy(-1, 200);
Log("nowAccount:", exchange.GetAccount());
}

On peut voir que l’Amount est passé à 200 dollars parce que le compte n’avait pas assez de dollars. Donc, est-ce que le paramètre Amount est le nombre de pièces échangées ?
exchange.Buy(-1, 0.5); // 这句的 第二个参数 原来是200 改为 0.5

Comme vous pouvez le voir ici, le 0.5 n’est pas 0.5 pièces, mais 0.5 francs (le montant en RMB) qui est envoyé, c’est pourquoi l’erreur ci-dessus est affichée.
Cette fois, c’est un peu différent.
function main() {
var ticker = null;
Log("OKCoin 允许的BTC最小交易量:", 0.01);
// GetMinStock 函数已经废除, 需要使用一个 变量代替 最小交易币数(或者设置成 界面参数)
Log("initAccount:", exchange.GetAccount());
Log("ticker:", ticker = exchange.GetTicker());
exchange.Sell(-1, 0.5); // 注意这里 传入Amount 的值 0.5
Log("nowAccount:", exchange.GetAccount());
}
Résultats des backtests :
On peut voir que le paramètre Amount entré lors de l’utilisation de Sell est le nombre de Bitcoins à échanger, plutôt que le montant en dollars, et que l’appel Buy est différent.
Cette fois-ci, je me suis précipité pour tester un peu de l’argent.
function main() {
var ticker = null;
Log("OKCoin 允许的BTC最小交易量:", 0.01);
Log("initAccount:", exchange.GetAccount());
// GetMinStock 函数已经废除, 需要使用一个 变量代替 最小交易币数(或者设置成 界面参数)
Log("ticker:", ticker = exchange.GetTicker());
exchange.Sell(-1, 0.011); // 我实盘 冲进去了一点钱, 看看效果。
Sleep(5000);
Log("nowAccount:", exchange.GetAccount());
}
Résultats de l’opération :
On peut voir que le second paramètre de Sell, Amount, est le nombre de pièces à échanger.