avatar of 发明者量化-小小梦 发明者量化-小小梦
پر توجہ دیں نجی پیغام
4
پر توجہ دیں
1271
پیروکار

ڈیریبٹ فیوچر API کو آپشنز کوانٹیٹیو ٹریڈنگ کے مطابق تبدیل کرنا

میں تخلیق کیا: 2019-10-29 14:57:54, تازہ کاری: 2024-12-16 11:24:47
comments   0
hits   2741

ڈیریبٹ فیوچر API کو آپشنز کوانٹیٹیو ٹریڈنگ کے مطابق تبدیل کرنا

پہلے سے ہی بہت سے ڈیجیٹل کرنسی فیوچر ایکسچینجز موجود ہیں، لیکن فیوچر ڈیریویٹیو، ڈیجیٹل کرنسی آپشنز ٹریڈنگ کے طور پر، مارکیٹ میں بہت زیادہ ایکسچینجز نہیں ہیں جو آپشنز ٹریڈنگ کو سپورٹ کرتے ہیں ان میں ڈیریبٹ اور بٹ میکس شامل ہیں۔ مقداری تجارت کے میدان میں، آپشن ٹریڈنگ کے لیے بھی بہت سی حکمت عملییں ہیں، جیسے کہ کچھ تلاش کیے گئے مواد میں آپشن کی حکمت عملیوں کا ذکر کیا گیا ہے:

قسم
دشاتمک حکمت عملی: کال آپشن خریدنا پوٹ آپشن فروخت کرنا بیل کال اسپریڈ بیل ڈال پھیلاؤ
پوٹ آپشن خریدیں۔ کال کا آپشن فروخت کرنا بیئر کال اسپریڈ Bear Put Spread
اتار چڑھاؤ کی حکمت عملی: Straddle فروخت کریں۔ وائڈ اسٹریڈل فروخت کریں۔ اسٹریڈل خریدیں۔ وائڈ اسٹریڈل خریدیں۔
ہیجنگ کی حکمت عملی: کورڈ کال ڈھانپے ہوئے پوٹ حفاظتی کالز حفاظتی پوٹ
لمبی ڈبل حد مختصر پوزیشن ڈبل حد

سے حوالہ دیا گیا ہے۔جڑیں

آپشنز ٹریڈنگ کی حکمت عملی لکھنے کے لیے، آپ کو اب بھی پہلے ایک ٹھوس بنیاد رکھنی ہوگی اور بنیادی کاموں سے واقف ہونا ہوگا جیسے آرڈر دینا، مارکیٹ کی معلومات حاصل کرنا، آرڈرز منسوخ کرنا، اور پوزیشنز حاصل کرنا۔ حکمت عملی کی تحریر اب بھی موجد مقداری تجارتی پلیٹ فارم کا استعمال کرتی ہے، حالانکہ موجد مقداری تجارتی پلیٹ فارم فی الحال بنیادی طور پر کرنسی سے کرنسی ٹریڈنگ، کنٹریکٹ ٹریڈنگ، اور ڈیجیٹل کرنسی مقداری تجارت کے میدان میں لیوریجڈ ٹریڈنگ کی حمایت کرتا ہے۔ ذیل میں آپشنز ٹریڈنگ سے متعلق زیادہ معلومات نہیں ہیں، ہم ڈیجیٹل کرنسی آپشنز ٹریڈنگ کھیلنے کے لیے انوینٹر کوانٹیٹیو ٹریڈنگ پلیٹ فارم کا استعمال کرنے کے لیے ایک مثال کے طور پر “Deribit” کا تبادلہ کریں گے۔

ڈیریبٹ سے متعلق معلومات

API دستاویزات: https://docs.deribit.com/v2/?javascript#public-get_last_settlements_by_instrument نقلی ڈسک: https://docs.deribit.com/v2/?javascript#public-get_last_settlements_by_instrument

آپ سمولیشن پلیٹ فارم کی ویب سائٹ پر ایک اکاؤنٹ رجسٹر کر سکتے ہیں، API KEY کو فعال کر سکتے ہیں، اور API KEY حاصل کر سکتے ہیں۔ موجد کوانٹیٹیو ٹریڈنگ پلیٹ فارم پر کنفیگر کرنا ایک حقیقی اکاؤنٹ کو ترتیب دینے کے مترادف ہے۔ ڈیریبٹ فیوچر API کو آپشنز کوانٹیٹیو ٹریڈنگ کے مطابق تبدیل کرنا

آپشن ٹریڈنگ کے لیے آپ کو 4 بنیادی تصورات کو سمجھنے کی ضرورت ہے: ڈیریبٹ فیوچر API کو آپشنز کوانٹیٹیو ٹریڈنگ کے مطابق تبدیل کرنا

  • مشق کی تاریخ: وہ تاریخ جس پر آپشن کے طویل اور مختصر فریق آپشن کنٹریکٹ کی ڈیلیوری مکمل کرتے ہیں۔
  • ہڑتال کی قیمت: مشق کی تاریخ پر، آپشن کی لمبی اور مختصر جماعتیں مشق کی قیمت پر آپشن کنٹریکٹ کی ڈیلیوری مکمل کرتی ہیں۔
  • پریمیم: یہ اسپاٹ فیوچر کی طرح ایک آپشن کی قیمت ہے، قیمت خرید اور فروخت کی قیمت شامل ہے۔ یہ بات قابل غور ہے کہ چونکہ آپشنز کی لیکویڈیٹی عام طور پر فیوچر اور اسپاٹ سے زیادہ خراب ہوتی ہے، اس لیے بولی مانگنے کا پھیلاؤ بڑا ہو سکتا ہے، اس لیے یہاں خاص توجہ دی جانی چاہیے! لین دین مکمل ہونے کے بعد، لین دین کی قیمت طویل اختیار کی قیمت ہوتی ہے، اس وقت، طویل پوزیشن حق حاصل کرتی ہے (آپشن کو استعمال کرنے کا حق) اور پریمیم وصول کرنے والے فریق کے طور پر , ایک اضافی ذمہ داری ہے ایک بار جب طویل پوزیشن حق استعمال کرنے کے لئے, مختصر پوزیشن تعاون کرنا ضروری ہے.
  • کال اور ڈال کے اختیارات: کال آپشن ایک حق ہے کہ طویل آپشن ہولڈر کو شارٹ آپشن ہولڈر سے مخصوص مشق کی تاریخ پر ایک مخصوص قیمت پر بٹ کوائن خریدنے کے لیے کہنا پڑتا ہے، اور شارٹ آپشن ہولڈر طویل آپشن کے ساتھ تعاون کرنے کی ذمہ داری رکھتا ہے۔ ہولڈر ایک پٹ آپشن ایک حق ہے جو مختصر آپشن ہولڈر کو ایک مخصوص مشق کی تاریخ پر ایک مخصوص قیمت پر بٹ کوائن خریدنے کے لیے کہا جاتا ہے۔ دیئے گئے بٹ کوائنز کو ایک مخصوص قیمت پر فروخت کریں، اور مختصر بیچنے والے کی ذمہ داری ہے کہ وہ طویل فروخت کنندہ کے ساتھ تعاون کرے۔

مارکیٹ کی معلومات

ڈیریبٹ ایکسچینج کے API دستاویزات کے مطابق، ڈیریبٹ کا مارکیٹ انٹرفیس صرف فیوچر یا آپشنز مارکیٹ کی معلومات تک رسائی کے لیے ڈیٹا میں گزرتا ہے۔instrument_nameپیرامیٹرز مختلف ہیں (instrument_name فنکشن SetContractType کے ذریعہ سیٹ کیا گیا ہے)، لہذا بنیادی طور پر آپ مارکیٹ کی معلومات حاصل کرنے کے لیے انٹرفیس استعمال کر سکتے ہیں۔GetTickerاختیارات کے لیے اقتباسات حاصل کریں۔

بلاشبہ، موجد کوانٹیٹیو ٹریڈنگ پلیٹ فارم کا ڈیفالٹ پیکج ڈیریبٹ ایکسچینج کی حقیقی مارکیٹ ہے، ہمیں پہلے سمولیشن مارکیٹ میں جانا چاہیے اور درج ذیل کوڈ کا استعمال کرنا چاہیے:

exchange.IO("base", "https://test.deribit.com")

پھر ہم نے فی الحال ایک آپشن معاہدہ قائم کیا۔BTC-27DEC19-7000-P: یہ ایک پوٹ آپشن ہے جس کی ورزش کی تاریخ 27DEC19 اور ورزش کی قیمت 7000 ہے۔

exchange.SetContractType("BTC-27DEC19-7000-P")

پھر اسے حاصل کریں، ہم اسے ایک ساتھ لکھتے ہیں، کوڈ چلاتے ہیں، اور اس آپشن کے معاہدے کی مارکیٹ کی معلومات حاصل کرنے کے لیے ٹیسٹ کرتے ہیں۔

function main () {
    exchange.IO("base", "https://test.deribit.com")
    exchange.SetContractType("BTC-27DEC19-7000-P")
    var ticker = exchange.GetTicker()
    Log(ticker)
}

ڈیبگنگ ٹولز کا استعمال جانچنے کے لیے بہت آسان ہو سکتا ہے: ڈیریبٹ فیوچر API کو آپشنز کوانٹیٹیو ٹریڈنگ کے مطابق تبدیل کرنا آپ دیکھ سکتے ہیں کہ قیمت سمولیشن ڈسک پر قیمت کے مطابق ہے۔ ڈیریبٹ فیوچر API کو آپشنز کوانٹیٹیو ٹریڈنگ کے مطابق تبدیل کرنا

دوسرے مارکیٹ انٹرفیس کے کال کرنے کے طریقے ایک جیسے ہیں اور یہاں نہیں دہرائے جائیں گے۔ آپشن ٹریڈنگ بہت زیادہ فعال نہیں ہوتی ہے اس وقت، انوینٹر کوانٹیٹیو ٹریڈنگ پلیٹ فارم کی نچلی پرت 0 کی قیمت کا پتہ لگائے گی اور آپ اسے استعمال کر سکتے ہیں۔SetErrorFilter("Invalid ticker")اس غلطی کو نظر انداز کریں اور استعمال کریں۔GetRawJSONفنکشن مارکیٹ کی اصل معلومات حاصل کرتا ہے اور ڈیٹا کو سمیٹتا ہے اسی طرح کے افعال کو حاصل کرنے کے لیے میں یہاں ایک مثال لکھتا ہوں:

function init() {
    SetErrorFilter("Invalid ticker")
}

$.GetTicker = function(e) {
    var ticker = e.GetTicker()
    if (!ticker) {
        try {
            var ret = JSON.parse(e.GetRawJSON())
            return {
                Info : ret,
                High : ret.result.stats.high,
                Low : ret.result.stats.low, 
                Buy : ret.result.best_bid_price,
                Sell : ret.result.best_ask_price,
                Last : ret.result.last_price, 
                Volume : ret.result.stats.volume,
                OpenInterest : 0,
                Time : new Date().getTime()
            }
        } catch (err) {
            Log(err)
        }
    }
    
    return ticker
}

کال کرتے وقت لکھیں:Log($.GetTicker(exchange))

آرڈر دیں۔

فیوچر ٹریڈنگ کے مقابلے میں آرڈر پلیسمنٹ آپریشن بہت آسان ہے، صرف دو سمتیں ہیں: خریدو فروخت۔ بھی استعمال کریں۔Sell,Buyفنکشن آرڈر۔

function main () {
    exchange.IO("base", "https://test.deribit.com")
    exchange.SetContractType("BTC-27DEC19-7000-P")
    
    var id = exchange.Buy(0.017, 1)
    Log(exchange.GetOrder(id))
}

ڈیریبٹ فیوچر API کو آپشنز کوانٹیٹیو ٹریڈنگ کے مطابق تبدیل کرنا

ابھی جو آرڈر دیا گیا ہے وہ نقلی تجارتی بورڈ پر بھی ظاہر ہوتا ہے۔ ڈیریبٹ فیوچر API کو آپشنز کوانٹیٹیو ٹریڈنگ کے مطابق تبدیل کرنا

اورexchange.GetOrder(id)آپ آرڈر کی معلومات سے استفسار کر سکتے ہیں۔

آرڈر منسوخ کریں۔

آرڈر کینسل کرنے کے لیے بھی یہی طریقہ استعمال کیا جاتا ہے۔CancelOrderفنکشن، بالکل اسی طرح جیسے فیوچر ٹریڈنگ میں آرڈر منسوخ کرنا۔ ڈیریبٹ فیوچر API کو آپشنز کوانٹیٹیو ٹریڈنگ کے مطابق تبدیل کرنا

اکاؤنٹ میں دستیاب اثاثے حاصل کریں۔

کسی اکاؤنٹ میں دستیاب اثاثوں کو حاصل کرنا بالکل وہی ہے جیسا کہ فیوچر ٹریڈنگ میں ہوتا ہے۔GetAccountفنکشن

نقلی تبادلہ صفحہ پر ڈسپلے کریں۔ ڈیریبٹ فیوچر API کو آپشنز کوانٹیٹیو ٹریڈنگ کے مطابق تبدیل کرنا

حاصل کرنے کے لیے کوڈ چلائیں: ڈیریبٹ فیوچر API کو آپشنز کوانٹیٹیو ٹریڈنگ کے مطابق تبدیل کرنا

پوزیشن کی معلومات حاصل کریں۔

عہدوں پر فائز رہنے کے لیے، آپ براہ راست پیکڈ استعمال نہیں کر سکتےGetPositionفنکشن، کیونکہ ڈیفالٹ ڈیریبٹ ٹرانزیکشنز فیوچر ٹرانزیکشنز ہیں، آپشنز ٹرانزیکشنز نہیں، اور صرف اس فنکشن کو فیوچر پوزیشنز حاصل کرنے کے لیے استعمال کیا جا سکتا ہے۔ لہذا، ہمیں خود اختیاری پوزیشن حاصل کرنے کے فنکشن کو سمیٹنا چاہیے۔

API دستاویزات میں پوزیشن حاصل کرنے کے لیے فنکشن انٹرفیس: ڈیریبٹ فیوچر API کو آپشنز کوانٹیٹیو ٹریڈنگ کے مطابق تبدیل کرنا

$.GetPosition = function(e) {
    // /private/get_positions
    // currency  , kind 
    
    var positions = [] 
    var currency = e.GetCurrency()
    var arr = currency.split("_")
    var baseCurrency = arr[0]
    
    try {
        var ret = e.IO("api", "GET", "/api/v2/private/get_positions", "currency=" + baseCurrency + "&kind=option")
        for (var i in ret.result) {
            if (ret.result[i].size == 0 || ret.result[i].direction == "zero") {
                continue    
            } 
            
            var pos = {
                Info : ret.result[i], 
                Amount : ret.result[i].size,
                FrozenAmount : 0,
                Price : ret.result[i].average_price,
                Profit : ret.result[i].floating_profit_loss,
                MarginLevel : 0,
                Margin : 0,
                ContractType : ret.result[i].instrument_name,
                Type : ret.result[i].direction == "buy" ? ORDER_TYPE_BUY : ORDER_TYPE_SELL,
            }
            
            positions.push(pos)
        }
    } catch (err) {
        Log(err)
        positions = null
    }
    
    return positions
}

کال کریں۔Log($.GetPosition(exchange))آپ پوزیشن کی معلومات پرنٹ کرسکتے ہیں۔ ڈیریبٹ فیوچر API کو آپشنز کوانٹیٹیو ٹریڈنگ کے مطابق تبدیل کرنا ڈیریبٹ فیوچر API کو آپشنز کوانٹیٹیو ٹریڈنگ کے مطابق تبدیل کرنا

اس طرح، بنیادی کارروائیاں حاصل کی جا سکتی ہیں، اور باقی آپشنز ٹریڈنگ کی حکمت عملیوں کا مطالعہ کرنا ہے۔