成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

使用 Node.js 在開放交易所OceanOne上掛單買賣奔馳幣

tigerZH / 3552人閱讀

摘要:在上一課中,我們介紹了如何在交易比特幣。支持交易任何上的,包括所有的和,不需要任何手續(xù)和費(fèi)用,直接掛單即可。掌握了代幣的交易方法,就可以交易任何其他代幣了。

在上一課中,我們介紹了如何在OceanOne交易比特幣。OceanOne支持交易任何Mixin Network上的token,包括所有的ERC20和EOS token,不需要任何手續(xù)和費(fèi)用,直接掛單即可。下面介紹如何將將一個(gè)ERC20 token掛上OceanOne交易。掌握了ERC20代幣的交易方法,就可以交易任何其他Mixin Network代幣了。

此處我們用一個(gè)叫做Benz的ERC20 token為例。這個(gè)token已經(jīng)被充值進(jìn)Mixin Network,你可以在區(qū)塊鏈瀏覽器看到這個(gè)token在Mixin Network內(nèi)部的總數(shù)和交易

預(yù)備知識(shí):

先將Ben幣存入你的錢包,然后使用getAssets API讀取它的UUID.

取得該幣的UUID

調(diào)用 getAssets API 會(huì)返回json數(shù)據(jù), 如:

asset_id 幣的UUID.

public_key 該幣的當(dāng)前錢包的地址.

symbol 幣的名稱. 如: Benz.

if ( args.type === TYPE_WALLET_ASSETS_INFO ) {
  const assetsInfo = await newUserClient.getUserAssets();
  console.log("-AssetID--Asset--Balance--public_key--");
  assetsInfo.forEach(function(element) {
     console.log(element.asset_id + "  " +
                 element.symbol + "  " +
                 element.balance + "  " +
                 element.public_key + " " +
                 element.account_name + "  " +
                 element.account_tag
               );
   });
  // console.log(assetsInfo);
}

調(diào)用 getUserAssets API的完整輸出如下:

Make your choose aw: Read Wallet All Asssets Information
You choice to : { type: "aw: Read Wallet All Asssets Information" }
You wallet is : 0b10471b-1aed-3944-9eda-5ab947562761
-AssetID--Asset--Balance--public_key--
2b9c216c-ef60-398d-a42a-eba1b298581d  Benz  99.9  0xA35722B0a5Ab20f2d2276999F5b18D42C71Ba688
6cfe566e-4aad-470b-8c9a-2fd35b49c68d  EOS  0   eoswithmixin  30f0c36057b9b22151173b309bd0d79c
965e5c6e-434c-3fa9-b780-c50f43cd955c  CNB  999.99999993  0xA35722B0a5Ab20f2d2276999F5b18D42C71Ba688
c6d0c728-2624-429b-8e0d-d9d19b6592fa  BTC  0  15MySY7UnA827TRMQWuCKGiogCYXUmt21M
限價(jià)掛單

掛限價(jià)買單 低于或者等于市場(chǎng)價(jià)的單.

掛限價(jià)賣單 高于或者是等于市場(chǎng)價(jià)的單.

OceanOne支持三種基類價(jià)格: USDT, XIN, BTC, 即: Benz/USDT, Benz/XIN, Benz/BTC, 這兒示范Benz/USDT.

限價(jià)掛賣單.

新幣掛單后,需要等一分鐘左右,等OceanOne來初始化新幣的相關(guān)數(shù)據(jù).

else if ( args.type === TYPE_OO_SELL_ERC_USDT ) {
  var prompts = [
    {
      name: "price",
      type: "input",
      message: "Input the price of ERC(Benz)/USDT: ",
    },
  ];
  price = await inquirer.prompt(prompts);
  var prompts = [
    {
      name: "amount",
      type: "input",
      message: "Input the amount of ERC20(Benz): ",
    },
  ];
  amount = await inquirer.prompt(prompts);
  console.log(price);
  console.log(amount);
  const memo = GenerateOceanMemo(USDT_ASSET_ID,"A",price.price);
  const assetInfo = await newUserClient.getUserAsset(ERC20_BENZ);
  console.log("The Wallet "s USDT balance is ", assetInfo.balance);
  if ( assetInfo.balance >= amount.amount ) {
    const Obj = {
      assetId: ERC20_BENZ,
      recipientId: OCEANONE_BOT,
        traceId: newUserClient.getUUID(),
        amount: amount.amount,
        memo: memo,
      }
      const transInfo = await newUserClient.transferFromBot(Obj);
      console.log(transInfo);
      console.log("The Order id is " + transInfo.trace_id + " It is needed to cancel the order!");
  } else {
    console.log("Not enough ERC20_BENZ!");
  }
}
限價(jià)掛買單.

新幣掛單后,需要等一分鐘左右,等OceanOne來初始化新幣的相關(guān)數(shù)據(jù).

else if ( args.type === TYPE_OO_BUY_ERC_USDT ) {
 var prompts = [
   {
     name: "price",
     type: "input",
     message: "Input the price of ERC20(Benz)/USDT: ",
   },
 ];
 price = await inquirer.prompt(prompts);
 var prompts = [
   {
     name: "amount",
     type: "input",
     message: "Input the amount of USDT: ",
   },
 ];
 amount = await inquirer.prompt(prompts);
 console.log(price);
 console.log(amount);
 const memo = GenerateOceanMemo(ERC20_BENZ,"B",price.price);
 const assetInfo = await newUserClient.getUserAsset(USDT_ASSET_ID);
 console.log("The Wallet "s USDT balance is ", assetInfo.balance);
 if ( assetInfo.balance >= amount.amount && assetInfo.balance >= 1 ) {
   const Obj = {
     assetId: USDT_ASSET_ID,
     recipientId: OCEANONE_BOT,
       traceId: newUserClient.getUUID(),
       amount: amount.amount,
       memo: memo,
     }
     const transInfo = await newUserClient.transferFromBot(Obj);
     console.log(transInfo);
     console.log("The Order id is " + transInfo.trace_id + " It is needed to cancel the order!");
 } else {
   console.log("Not enough USDT!");
 }
}
讀取幣的價(jià)格列表

讀取幣的價(jià)格列表,來確認(rèn)掛單是否成功!

else if ( args.type === TYPE_OO_FETCH_ERC_USDT ) {
  FetchOceanOneMarketInfos(ERC20_BENZ, USDT_ASSET_ID);
}
function FetchOceanOneMarketInfos(asset_id, base_asset) {
  var instance = axios.create({
  baseURL: "https://events.ocean.one/markets/" + asset_id + "-" + base_asset + "/book",
  timeout: 3000,
  headers: {"X-Custom-Header": "foobar"}
  });
  instance.get()
  .then(function(response) {
    console.log("--Price--Amount--Funds--Side")
    response.data.data.data.asks.forEach(function(element) {
       console.log(element.price + "     " +
                   element.amount + "     " +
                   element.funds + "     " +
                   element.side);
     });
     response.data.data.data.bids.forEach(function(element) {
        console.log(element.price + "     " +
                    element.amount + "     " +
                    element.funds + "     " +
                    element.side);
      });
    // console.log(response.data.data.data.asks);
  });
}
ERC20相關(guān)的操作指令

Commands list of this source code:

21: Fetch ERC20/USDT order book

24: Sell ERC20/USDT

27: Buy ERC20/USDT

28: Cancel the order

q: Exit

完整的代碼

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/24681.html

相關(guān)文章

  • 通過 Ruby 買賣Bitcoin:使用開放易所OceanOne

    摘要:方案二掛單交易所是基于的去中心化交易所,它性能一流。完整的步驟如下檢查比特幣或的余額,錢包地址。比特幣的到帳時(shí)間是個(gè)區(qū)塊的高度,約分鐘。 showImg(https://segmentfault.com/img/remote/1460000019234638?w=1200&h=659);上一章介紹了Exincore,你可以1秒完成資產(chǎn)的市價(jià)買賣。如果你想限定價(jià)格買賣,或者買賣一些exi...

    taoszu 評(píng)論0 收藏0
  • PHP比特開發(fā)教程:去中心化易所OceanOne掛單買賣比特

    摘要:方案二掛單交易所是基于的去中心化交易所,它性能一流。完整的步驟如下檢查比特幣或的余額,錢包地址。比特幣的到帳時(shí)間是個(gè)區(qū)塊的高度,約分鐘。 showImg(https://segmentfault.com/img/remote/1460000018419614?w=1200&h=659);上一章介紹了Exincore,你可以1秒完成資產(chǎn)的市價(jià)買賣。如果你想限定價(jià)格買賣,或者買賣一些exi...

    only_do 評(píng)論0 收藏0
  • PHP比特開發(fā)教程:去中心化易所OceanOne掛單買賣比特

    摘要:方案二掛單交易所是基于的去中心化交易所,它性能一流。完整的步驟如下檢查比特幣或的余額,錢包地址。比特幣的到帳時(shí)間是個(gè)區(qū)塊的高度,約分鐘。 showImg(https://segmentfault.com/img/remote/1460000018419614?w=1200&h=659);上一章介紹了Exincore,你可以1秒完成資產(chǎn)的市價(jià)買賣。如果你想限定價(jià)格買賣,或者買賣一些exi...

    APICloud 評(píng)論0 收藏0
  • 用Ruby去中心化易所OceanOne掛單買賣任意ERC20 token

    摘要:在上一課中,我們介紹了如何在交易比特幣。支持交易任何上的,包括所有的和,不需要任何手續(xù)和費(fèi)用,直接掛單即可。下面介紹如何將將一個(gè)掛上交易在掌握了之后,就可以把任何在上買賣。此處我們用一個(gè)叫做的為例。 showImg(https://segmentfault.com/img/remote/1460000019329775?w=1201&h=660); 在上一課中,我們介紹了如何在Ocea...

    用戶83 評(píng)論0 收藏0
  • 用PHP去中心化易所OceanOne掛單買賣任意ERC20 token

    摘要:在上一課中,我們介紹了如何在交易比特幣。支持交易任何上的,包括所有的和,不需要任何手續(xù)和費(fèi)用,直接掛單即可。下面介紹如何將將一個(gè)掛上交易此處我們用一個(gè)叫做的為例。 showImg(https://segmentfault.com/img/remote/1460000018419614?w=1200&h=659); 在上一課中,我們介紹了如何在OceanOne交易比特幣。OceanOne...

    DevWiki 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<