日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

使用.net調(diào)用比特兒自動(dòng)交易api的方法是什么?如何使用.net調(diào)用比特兒自動(dòng)交易?

比特兒是國(guó)內(nèi)主流的比特幣/山寨幣交易網(wǎng)站,其上能夠進(jìn)行大部分虛擬貨幣之間及與人民幣的交易和兌換 。下面小編給大家介紹一下它,希望你能喜歡!

使用.net調(diào)用比特兒自動(dòng)交易api的方法是什么?如何使用.net調(diào)用比特兒自動(dòng)交易?


參考國(guó)外的btc-e網(wǎng)站,能看到bter.com幾乎是btc-e的一個(gè)克隆版 。bter同btc-e一樣提供有自動(dòng)交易API接口 。并在網(wǎng)站上提供了一個(gè)php版的例子,查看兩個(gè)網(wǎng)站的php例子,發(fā)現(xiàn)幾乎完全相同 。而btc-e網(wǎng)站提供了多種語(yǔ)言的訪(fǎng)問(wèn)例子 。其中的.net接口例子是比較完整和精巧的 。它將btc-e的原始網(wǎng)站api接口進(jìn)行二次封裝生成dll,在.net程序中可以非常簡(jiǎn)單的調(diào)用 ?,F(xiàn)在我們看一下如何改動(dòng)btc-e.com的.net例程以用于比特兒交易網(wǎng)站 。
在https://github.com/DmT021/BtceApi下載到btc-e的.net例程源碼包 。我們看到,在項(xiàng)目里一個(gè)BtceApi的子項(xiàng)目才是訪(fǎng)問(wèn)btc-e自動(dòng)交易API的核心源碼,這個(gè)子項(xiàng)目生成Btceapi.dll,被apitest主程序引用 。
btceapi項(xiàng)目中,btceapi.cs是程序核心,而btcdpair.cs及Depth.cs,Funds.cs等等用于一些常數(shù)或結(jié)構(gòu)的定義 。在btceapi.cs源碼中,我們查找https://btc-e.com/tapi,將此地址改為bter.com的相應(yīng)地址:
//var request = WebRequest.Create(new Uri(https://btc-e.com/tapi)) as HttpWebRequest;
var request = WebRequest.Create(new Uri(https://bter.com/api)) as HttpWebRequest;
而具體api調(diào)用也需要更改:
//string queryStr = string.Format(https://btc-e.com/api/2/{0}/depth, BtcePairHelper.ToString(pair));
string queryStr = string.Format(https://bter.com/api/1/depth/{0}, BtcePairHelper.ToString(pair));
其余類(lèi)似地方均作修改即可 。好,現(xiàn)在我們寫(xiě)些代碼測(cè)試下bter的交易行情api 。確認(rèn)btceapi.cs已經(jīng)做過(guò)如下修改:
//string queryStr = string.Format(https://btc-e.com/api/2/{0}/ticker, BtcePairHelper.ToString(pair));
string queryStr = string.Format(https://bter.com/api/1/ticker/{0}, BtcePairHelper.ToString(pair));
然后我們?cè)谡{(diào)用者程序中用以下語(yǔ)句調(diào)用封裝過(guò)的接口:
var ticker1 = BtceApi.GetTicker(BtcePair.LtcBtc);
System.Console.Out.WriteLine(Convert.ToString(ticker1.High)|Convert.ToString(ticker1.Low));
我們查看的是ltc兌換btc的行情數(shù)據(jù) 。ticker.cs已定義了btc-e.com的交易行情API的返回結(jié)構(gòu),比如ticker.sell是賣(mài)單數(shù)量,ticker.low是最低價(jià)等,測(cè)試起見(jiàn),以上語(yǔ)句只顯示最高價(jià)和最低價(jià)以驗(yàn)證結(jié)果 。
編譯運(yùn)行,悲劇,出現(xiàn)異常了 。顯示未定義的變量之類(lèi),不要緊,讓我們調(diào)試一下代碼:
public static Ticker GetTicker(BtcePair pair)
{
string resStr;
//string queryStr = string.Format(https://btc-e.com/api/2/{0}/ticker, BtcePairHelper.ToString(pair));
string queryStr = string.Format(https://bter.com/api/1/ticker/{0}, BtcePairHelper.ToString(pair));
resStr = Query(queryStr);
var res = JObject.Parse(resStr);
return Ticker.ReadFromJObject(res[ticker] as JObject);
}
我們?cè)赽tceapi.cs的getticker方法中,看到一直到var res = JObject.Parse(resStr)句都是正常的 。甚至變量res也得到了正確的結(jié)果 。然而與原btc-e網(wǎng)站的返回結(jié)果比較,btc-e網(wǎng)站的結(jié)果雖也是json格式,但卻是放在一個(gè)ticker結(jié)構(gòu)里面,而bter.com返回的json則未將各high,low等數(shù)據(jù)項(xiàng)外面再加一層ticker結(jié)構(gòu)包裝,導(dǎo)致res[ticker] as JObject一句出現(xiàn)異常 。所以只需將res[ticker]改為res即可 。
好再次編譯運(yùn)行,正常 。正確打印出了當(dāng)前的最高價(jià)和最低價(jià) 。
【使用.net調(diào)用比特兒自動(dòng)交易api的方法是什么?如何使用.net調(diào)用比特兒自動(dòng)交易?】使用自動(dòng)交易API,可根據(jù)自己的創(chuàng)意做許多事情,此處不再啰嗦 。如果您覺(jué)得本文有用,可以支持些BTC或LTC,本人十分感謝 。當(dāng)然不支持也隨時(shí)歡迎大家光臨本博客,哈哈 。

推薦閱讀