Type/to search
8
Follow
1386
Followers
2.2 ایک حد کا آرڈر دیں۔
Tutorials
Created 2016-11-07 16:41:10  Updated 2019-08-01 09:26:27
 7
 6769

ٹرانزیکشن کی کم قیمت


  • Buy () قیمت، رقم () فنکشن

چھوٹی سی تیاری

ٹرانزیکشن خرید () فنکشن کا استعمال کرتے ہوئے**/**Sell (()) پہلے کچھ API ہیں جن سے واقف ہونا ضروری ہے۔

  • 1، GetOrder ((orderId) آرڈر نمبر کی بنیاد پر آرڈر کی تفصیلات حاصل کرتا ہے اور آرڈر ڈھانچہ واپس کرتا ہے۔
  • 2، GetOrders تمام نامکمل احکامات حاصل کرتا ہے اور ایک آرڈر سرنی ڈھانچہ واپس کرتا ہے۔
  • 3، CancelOrder ((orderId) آرڈر نمبر کی بنیاد پر آرڈر منسوخ کریں، TRUE یا FALSE واپس کریں۔
  • 4، آرڈر کی حیثیت آرڈر ڈھانچے میں حیثیت کی قدر
[ ORDER_STATE_PENDING :未完成 ORDER_STATE_CLOSED :已关闭 ORDER_STATE_CANCELED :已取消 ]
  • 5، آرڈر کی ساخت، GetOrder فنکشن کی طرف سے واپس
{ Id :交易单唯一标识 Price :下单价格 Amount :下单数量 DealAmount :成交数量 Status :订单状态, 参考常量里的订单状态 Type :订单类型, 参考常量里的订单类型 }

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个币
  • قیمتوں کا تعین

    ہم دیکھتے ہیں کہ کس طرح آسان استعمال کرنے کے لئے قیمت کی حد کی فہرست، اصل میں قیمت کی حد کی فہرست کے ساتھ نمٹنے کے لئے کی ضرورت ہے بہت سے تفصیلات ہیں، ہم سب سے پہلے سادہ سمجھنے کے لئے، کیونکہ بعد میںسیکشن 3.1اس کے علاوہ، آپ کو سیکھنے کے لئے ایک بہت ہی پیچیدہ عمل ہوگا.

function main() { // 方便用户看这些 宏的值 我们事先打印出来 // ORDER_STATE_PENDING :未完成 // ORDER_STATE_CLOSED :已关闭 // ORDER_STATE_CANCELED :已取消 Log("ORDER_STATE_PENDING:", ORDER_STATE_PENDING, ", ORDER_STATE_CLOSED:", ORDER_STATE_CLOSED, ", ORDER_STATE_CANCELED:", ORDER_STATE_CANCELED); // 这些都是订单状态的宏,打印这些值认识下,在本段代码不起任何作用,仅仅观察下这些 “状态” 的值。 var ticker = exchange.GetTicker(); // 上一章 已经讲述了怎么获取行情信息。 Log("初始账户信息:", exchange.GetAccount()); // 用于对比交易前后账户信息 var ID = exchange.Buy(ticker.Sell + 0.1, 0.1); // ticker.Sell 即 上一章中的 depth.Asks[0].Price 。 // 返回值是一个订单 ID ,参考上面 小准备。 // 限价单下单后 返回一个ID 可以用来查询这个订单的完成情况。我们暂停1秒 即: Sleep(1000) 。 Sleep(1000); var order = exchange.GetOrder(ID); // 根据ID 获取 对应的 订单信息。 Log("order:", order); Log("当前账户信息:", exchange.GetAccount()); // 对比初始账户信息 }

اس کے نتائج درج ذیل ہیں:
img
آپ دیکھ سکتے ہیں کہ چھپی ہوئی آرڈر کی حیثیت کی قیمت 1 ہے ، یعنی: ORDER_STATE_CLOSED 。 موجودہ آرڈر کی حیثیت مکمل ہے ، dealAmount 0.1 دیکھنا ، اور اس بات کی تصدیق کرنا ہے کہ یہ آرڈر ٹرانزیکشن مکمل کرچکا ہے۔ dealAmount 。 ہوسکتا ہے کہ قریب سے دیکھنے والے ساتھیوں کو پتہ چل جائے کہ چھپی ہوئی آرڈر API دستاویزات سے ایک سے زیادہ AvgPrice ((اوسط قیمت) ہے ، کیونکہ یہ وصف بعد میں توسیع کے ذریعہ ظاہر کی گئی ہے۔

  • Sell (قیمت، رقم) فنکشن

    API دستاویزات

Sell(Price, Amount) 跟Buy函数一样的调用方法和场景
  • قیمتوں کا تعین

    مندرجہ بالا خرید () فنکشن ہم نے استعمال کیا ہے جس کا استعمال کرتے ہوئے ہم نے پیمائش کے نظام کی جانچ پڑتال کی ہے، یہاں ہم نے اس کی جانچ پڑتال کی ہے کہ آیا آرڈر میں کوئی غیر متوقع صورت حال ہے (یا جزوی طور پر مکمل) ۔

function main() { // 方便用户看这些 宏的值 我们事先打印出来 // ORDER_STATE_PENDING :未完成 // ORDER_STATE_CLOSED :已关闭 // ORDER_STATE_CANCELED :已取消 Log("ORDER_STATE_PENDING:", ORDER_STATE_PENDING, " , ORDER_STATE_CLOSED:", ORDER_STATE_CLOSED, ", ORDER_STATE_CANCELED:", ORDER_STATE_CANCELED); var ticker = exchange.GetTicker(); // 上一章 已经讲述了怎么获取行情信息。 Log("初始账户信息:", exchange.GetAccount()); // 用于对比交易前后账户信息 var ID = exchange.Sell(ticker.Sell + 0.3, 2); // 这里故意把卖出价格加了 0.3 ,并且使用的ticker.Sell,增加了未成交的几率。 // 返回值是一个订单 ID ,参考上面 小准备。 // 限价单下单后 返回一个ID 可以用来查询这个订单的完成情况。我们暂停1秒 即: Sleep(1000) 。 Sleep(1000); var order = exchange.GetOrder(ID); // 根据ID 获取 对应的 订单信息。 Log("order:", order); Log("当前账户信息:", exchange.GetAccount()); // 对比初始账户信息 }

تخلیق کاروں کی طرف سے پیمائش کی گئی ہے کہ سیمالٹ کیسے کام کرتا ہے:
img
جیسا کہ آپ دیکھ سکتے ہیں ، آرڈر کی حیثیت 0 پرنٹ کی گئی ہے ، یعنی یہ مکمل نہیں ہوا ہے۔ DealAmount کی قیمت 0 ہے ، اور فروخت شدہ 2 سکے منجمد ہیں کیونکہ آرڈر زیر التوا ہے۔

اس کے علاوہ، ہم نے اس کے بارے میں کیا سوچا ہے کہ ہم اس کے بارے میں کیا سوچتے ہیں؟
یہاں ہم CancelOrder () فنکشن کا استعمال کرتے ہیں، ہم اس کا استعمال کرتے ہیں اس آرڈر کو منسوخ کرنے کے لئے جس کی شناخت درج کی گئی ہے۔

function main() { // 方便用户看这些 宏的值 我们事先打印出来 // ORDER_STATE_PENDING :未完成 // ORDER_STATE_CLOSED :已关闭 // ORDER_STATE_CANCELED :已取消 Log("ORDER_STATE_PENDING:", ORDER_STATE_PENDING, ", ORDER_STATE_CLOSED:", ORDER_STATE_CLOSED, ", ORDER_STATE_CANCELED:", ORDER_STATE_CANCELED); var ticker = exchange.GetTicker(); // 上一章 已经讲述了怎么获取行情信息。 Log("初始账户信息:", exchange.GetAccount()); // 用于对比交易前后账户信息 var ID = exchange.Sell(ticker.Sell + 50, 2); // ticker.Sell 即 上一章中的 depth.Asks[0].Price 。 // 返回值是一个订单 ID ,参考上面 小准备。 // 限价单下单后 返回一个ID 可以用来查询这个订单的完成情况。我们暂停1秒 即: Sleep(1000) 。 Sleep(1000); var order = exchange.GetOrder(ID); // 根据ID 获取 对应的 订单信息。 Log("order:", order); Log("当前账户信息:", exchange.GetAccount()); // 对比初始账户信息 Sleep(60 * 1000); exchange.CancelOrder(ID); // 取消 这个ID 的订单 order = exchange.GetOrder(ID); // 读取这个ID的订单信息。 Log("order:", order); }

چلانے کا نتیجہ: آرڈر ID 634795459 دکھا رہا ہے آخری پرنٹ شدہ پیغام میں اسٹیٹس 2 یعنی: ORDER_STATE_CANCELED: منسوخ
img

GetOrder ((ID) اور GetOrders (()) فنکشن ایک جیسے نظر آتے ہیں، فرق یہ ہے کہ سابقہ مخصوص ID کے لئے آرڈر کی معلومات حاصل کرتا ہے، اور بعد میں تمام未完成کے احکامات ((GetOrders (() لوٹایا گیا ڈیٹا ڈھانچہ آبجیکٹ کی صف ہے ، یعنی ہر عنصر آرڈر ڈھانچے کی صف ہے۔)

Related Recommendations
Comment
All comments (7)

    如果我不要买比特币,买其他的币,咋整?

    9 years ago

    参看这个 帖子的 第四个问题: https://www.botvs.com/bbs-topic/1427
    实盘的时候 可以使用自定义控件设置。

    9 years ago

    马克一下

    9 years ago

    能不能问一下,我根据
    exchange.Buy(ticker,0.1)来买一
    和
    exchange.Buy(depth,0.1)来买一
    的区别是什么,
    币的市场真实交易价到底如何获取哦

    9 years ago

    GetTicker 获取的就是 实时的 行情数据, GetDepth 获取的是深度 信息, 买一 、卖一 都是一样的。

    9 years ago

    python版本
    img
    img

    9 years ago

    感谢 分享!

    9 years ago
  • 1
Forums
PINE Language
Get the app
iPhone Download
© 2015 - ∞ INVENTOR PTE LTD (SG)