avatar of 发明者量化-小小梦 发明者量化-小小梦
집중하다 사신
4
집중하다
1271
수행원

2.3 시장 주문 거래하기

만든 날짜: 2016-11-08 11:05:52, 업데이트 날짜: 2019-08-01 09:26:02
comments   6
hits   5569

하반기 가격표 거래


리테스트 테스트와 실 디스크 테스트 모두 OKCoin 현장 거래소를 선택

  • ###

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个币

이 테스트의 소스코드는 다음과 같습니다.

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()); // 显示当前账户信息,用于对比 实际买入的数量。
}

이 영상들을 보면, 2.3 시장 주문 거래하기 참고: 회수할 때 입력된 Amount 파라미터는 프랑스 동전이다.

  • ### Buy (()) 하락 가격 표 실 디스크 테스트

2.3 시장 주문 거래하기 시시판 가격표에 맞지 않는 모의 디스크를 수 있다. 실제 디스크를 바꾸어 시도해 볼 수 있다.

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());
}

2.3 시장 주문 거래하기

이 계정에는 불충분한 현금 잔액이 있기 때문에 Amount가 200이 넘게 들어온 것을 볼 수 있습니다. 그럼 Amount는 거래된 화폐의 수인가요?

exchange.Buy(-1, 0.5); // 这句的 第二个参数 原来是200 改为 0.5 2.3 시장 주문 거래하기

여기 0.5가 들어온 것은 0.5 동전이 아니라 0.5 동전 (RMB 금액) 이므로 위의 오류가 표시됩니다.

  • ### 판매 (Sell) 할인 (Sell)

이번엔 ‘Sell’과 ‘Buy’의 차이점이 있습니다.

  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());
}

백테스팅 결과: 2.3 시장 주문 거래하기 예를 들어, “Sell”을 사용할 때, “Amount”의 매개 변수는 “Buy”을 호출하는 것과는 다르게, “BTC”의 수를 가리키는 것으로 나타납니다.

  • ### Sell (()) 하락 가격 표 실 디스크 테스트

그리고 이 순간, 저는 돈을 시험하기 위해 몰려들었습니다.

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());
}

작업 결과: 2.3 시장 주문 거래하기 Sell의 두 번째 변수는 Amount입니다.