فیوچر ایک معاہدہ کی شکل ہے جو دو فریقوں کے مابین مستقبل میں ایک مخصوص تاریخ پر کسی بنیادی اثاثے کی مقدار کی خریداری یا فروخت کے لئے تیار کی گئی ہے۔ اس تاریخ کو ترسیل یا میعاد ختم ہونے کے طور پر جانا جاتا ہے۔ جب اس تاریخ تک پہنچ جاتا ہے تو خریدار کو معاہدے کی تشکیل کی تاریخ پر متفقہ قیمت پر جسمانی بنیادی (یا نقد مساوی) بیچنے والے کو فراہم کرنا ہوگا۔
عملی طور پر فیوچر کی تجارت ایکسچینج (اوور دی کاؤنٹر - او ٹی سی ٹریڈنگ کے برعکس) میں معیاری مقدار اور بنیادی خصوصیات کے لئے کی جاتی ہے۔ قیمتوں کو ہر روز مارکیٹ میں نشان زد کیا جاتا ہے۔ فیوچر ناقابل یقین حد تک مائع ہیں اور قیاس آرائی کے مقاصد کے لئے بڑے پیمانے پر استعمال ہوتے ہیں۔ جبکہ فیوچر اکثر زرعی یا صنعتی سامان کی قیمتوں کو ہیج کرنے کے لئے استعمال ہوتے تھے ، فیوچر کا معاہدہ کسی بھی مادی یا غیر مادی بنیادی جیسے اسٹاک انڈیکس ، غیر ملکی کرنسی کی قیمتوں کی شرح سود پر تشکیل دیا جاسکتا ہے۔
مختلف تبادلے میں فیوچر معاہدوں کے لئے استعمال ہونے والے تمام علامتوں کے کوڈز کی تفصیلی فہرست سی ایس آئی ڈیٹا سائٹ: فیوچر فیکٹس شیٹ پر مل سکتی ہے۔
فیوچر کنٹریکٹ اور ایکویٹی کی ملکیت کے درمیان بنیادی فرق یہ حقیقت ہے کہ ایک فیوچر کنٹریکٹ میں میعاد ختم ہونے کی تاریخ کی وجہ سے دستیابی کی ایک محدود ونڈو ہے۔ کسی بھی لمحے میں ایک ہی بنیادی پر مختلف فیوچر کنٹریکٹ ہوں گے جن کی میعاد ختم ہونے کی تاریخ مختلف ہے۔ میعاد ختم ہونے کی قریب ترین تاریخ والے معاہدے کو قریب کا معاہدہ کہا جاتا ہے۔ مقداری تاجروں کی حیثیت سے ہمیں جس مسئلے کا سامنا کرنا پڑتا ہے وہ یہ ہے کہ وقت کے کسی بھی موقع پر ہمارے پاس متعدد معاہدوں کا انتخاب ہوتا ہے جس کے ساتھ تجارت کرنا ہے۔ اس طرح ہم ایکویٹیز یا غیر ملکی کرنسی کے معاملے میں ایک مسلسل سلسلہ کی بجائے وقت کی سیریز کے اوورلیپنگ سیٹ سے نمٹ رہے ہیں۔
اس مضمون کا مقصد متعدد سیریز کے اس سیٹ سے معاہدوں کے مسلسل سلسلے کی تعمیر کے مختلف طریقوں کا خاکہ پیش کرنا اور ہر تکنیک سے وابستہ تجارت کو اجاگر کرنا ہے۔
مختلف ترسیل کے ساتھ بنیادی معاہدوں سے مسلسل معاہدہ پیدا کرنے کی کوشش کرنے میں بنیادی مشکل یہ ہے کہ معاہدے اکثر ایک ہی قیمتوں پر تجارت نہیں کرتے ہیں۔ اس طرح ایسی صورتحال پیدا ہوتی ہے جہاں وہ ایک سے دوسرے تک ہموار جڑ فراہم نہیں کرتے ہیں۔ اس کی وجہ کنٹینگو اور بیکورڈریشن اثرات ہیں۔ اس مسئلے سے نمٹنے کے لئے مختلف نقطہ نظر ہیں ، جس پر ہم اب تبادلہ خیال کرتے ہیں۔
بدقسمتی سے مالیاتی صنعت میں فیوچر معاہدوں کو ایک ساتھ جوڑنے کے لئے کوئی واحد
یہ طریقہ متعدد معاہدوں میں
پاناما طریقہ کار کے ساتھ کلیدی مسئلہ میں رجحان تعصب کا تعارف شامل ہے ، جس سے قیمتوں میں بڑی تبدیلی آئے گی۔ اس سے کافی حد تک تاریخی معاہدوں کے لئے منفی اعداد و شمار پیدا ہوسکتے ہیں۔ اس کے علاوہ اقدار میں مطلق شفٹ کی وجہ سے نسبتا price قیمت کے اختلافات کا نقصان ہوتا ہے۔ اس کا مطلب یہ ہے کہ واپسی کا حساب لگانا پیچیدہ ہے (یا صرف سادہ غلط) ۔
تناسب ایڈجسٹمنٹ نقطہ نظر ایکوئٹی میں اسٹاک اسپلٹس کو سنبھالنے کے ایڈجسٹمنٹ طریقہ کار سے ملتا جلتا ہے۔ متواتر معاہدوں میں مطلق شفٹ لینے کے بجائے ، پرانے حل (بند) قیمت کا تناسب نئے کھلے قیمت کے ساتھ استعمال کیا جاتا ہے تاکہ تاریخی معاہدوں کی قیمتوں کو متناسب طور پر ایڈجسٹ کیا جاسکے۔ اس سے فیصد منافع کے حساب کتاب میں مداخلت کے بغیر مستقل سلسلہ جاری رہ سکتا ہے۔
متناسب ایڈجسٹمنٹ کا بنیادی مسئلہ یہ ہے کہ مطلق قیمت کی سطح پر انحصار کرنے والی کسی بھی تجارتی حکمت عملی کو بھی صحیح سگنل کو انجام دینے کے لئے اسی طرح ایڈجسٹ کرنا پڑے گا۔ یہ ایک پریشانی اور غلطی کا شکار عمل ہے۔ اس طرح اس قسم کی مسلسل بہاؤ اکثر صرف خلاصہ شماریاتی تجزیہ کے لئے مفید ہوتی ہے ، براہ راست بیک ٹیسٹنگ تحقیق کے برعکس۔
اس نقطہ نظر کا جوہر یہ ہے کہ ہر معاہدے کے درمیان ہموار منتقلی کو یقینی بنانے کے لئے کئی دنوں میں ہر معاہدے کا ایک لکیری وزن والا تناسب لے کر ایک دوسرے کے بعد آنے والے معاہدوں کا ایک مسلسل معاہدہ بنایا جائے۔
مثال کے طور پر پانچ ہموار دن پر غور کریں۔ دن 1 کی قیمت ، P1 ، دور معاہدے کی قیمت (F1) کے 80٪ اور قریب معاہدے کی قیمت (N1) کے 20٪ کے برابر ہے۔ اسی طرح ، دن 2 کی قیمت P2 = 0.6 × F2 + 0.4 × N2 ہے۔ دن 5 تک ہمارے پاس P5 = 0.0 × F5 + 1.0 × N5 = N5 ہے اور معاہدہ پھر قریب کی قیمت کا تسلسل بن جاتا ہے۔ اس طرح پانچ دن کے بعد معاہدہ آسانی سے دور سے قریب منتقل ہوجاتا ہے۔
رول اوور کے طریقہ کار کا مسئلہ یہ ہے کہ اس میں پانچوں دنوں میں تجارت کی ضرورت ہوتی ہے ، جس سے لین دین کے اخراجات میں اضافہ ہوسکتا ہے۔
اس مسئلے کے لیے اور بھی کم عام طریقے ہیں لیکن ہم یہاں ان سے بچیں گے۔
مضمون کا باقی حصہ مستقل سلسلہ کے طریقہ کار کو نافذ کرنے پر مرکوز ہوگا کیونکہ یہ بیک ٹسٹنگ کے لئے سب سے زیادہ موزوں ہے۔ یہ حکمت عملی پائپ لائن ریسرچ کرنے کا ایک مفید طریقہ ہے۔
ہم ایک مسلسل قیمت سیریز پیدا کرنے کے لئے ڈبلیو ٹی آئی خام تیل
مستقبل کے اعداد و شمار کو ڈاؤن لوڈ کرنے کے لئے میں نے Quandl پلگ ان کا استعمال کیا۔ اپنے سسٹم پر صحیح پائیتھون ورچوئل ماحول مرتب کرنے اور ٹرمینل میں درج ذیل ٹائپ کرکے Quandl پیکیج انسٹال کرنے کا یقین کریں۔
import datetime
import numpy as np
import pandas as pd
import Quandl
اہم کام فیوچر_ رول اوور_ ویٹس فنکشن میں کیا جاتا ہے۔ اس کے لئے شروع ہونے کی تاریخ (قریبی معاہدے کی پہلی تاریخ) ، معاہدے کے حل کی تاریخوں (میعاد ختم ہونے کی تاریخیں) ، معاہدوں کی علامتوں اور معاہدے کو رول کرنے کے دنوں کی تعداد (پنج تک ڈیفالٹ) کی ضرورت ہوتی ہے۔ ذیل میں دیئے گئے تبصرے کوڈ کی وضاحت کرتے ہیں:
def futures_rollover_weights(start_date, expiry_dates, contracts, rollover_days=5):
"""This constructs a pandas DataFrame that contains weights (between 0.0 and 1.0)
of contract positions to hold in order to carry out a rollover of rollover_days
prior to the expiration of the earliest contract. The matrix can then be
'multiplied' with another DataFrame containing the settle prices of each
contract in order to produce a continuous time series futures contract."""
# Construct a sequence of dates beginning from the earliest contract start
# date to the end date of the final contract
dates = pd.date_range(start_date, expiry_dates[-1], freq='B')
# Create the 'roll weights' DataFrame that will store the multipliers for
# each contract (between 0.0 and 1.0)
roll_weights = pd.DataFrame(np.zeros((len(dates), len(contracts))),
index=dates, columns=contracts)
prev_date = roll_weights.index[0]
# Loop through each contract and create the specific weightings for
# each contract depending upon the settlement date and rollover_days
for i, (item, ex_date) in enumerate(expiry_dates.iteritems()):
if i < len(expiry_dates) - 1:
roll_weights.ix[prev_date:ex_date - pd.offsets.BDay(), item] = 1
roll_rng = pd.date_range(end=ex_date - pd.offsets.BDay(),
periods=rollover_days + 1, freq='B')
# Create a sequence of roll weights (i.e. [0.0,0.2,...,0.8,1.0]
# and use these to adjust the weightings of each future
decay_weights = np.linspace(0, 1, rollover_days + 1)
roll_weights.ix[roll_rng, item] = 1 - decay_weights
roll_weights.ix[roll_rng, expiry_dates.index[i+1]] = decay_weights
else:
roll_weights.ix[prev_date:, item] = 1
prev_date = ex_date
return roll_weights
اب جب وزن سازی میٹرکس تیار ہوچکی ہے تو ، اسے انفرادی وقت کی سیریز پر لاگو کرنا ممکن ہے۔ مرکزی فنکشن قریب اور دور کے معاہدوں کو ڈاؤن لوڈ کرتا ہے ، دونوں کے لئے ایک ہی ڈیٹا فریم بناتا ہے ، رول اوور وزن سازی میٹرکس بناتا ہے اور پھر آخر میں دونوں قیمتوں کی ایک مسلسل سیریز تیار کرتا ہے ، مناسب طریقے سے وزن:
if __name__ == "__main__":
# Download the current Front and Back (near and far) futures contracts
# for WTI Crude, traded on NYMEX, from Quandl.com. You will need to
# adjust the contracts to reflect your current near/far contracts
# depending upon the point at which you read this!
wti_near = Quandl.get("OFDP/FUTURE_CLF2014")
wti_far = Quandl.get("OFDP/FUTURE_CLG2014")
wti = pd.DataFrame({'CLF2014': wti_near['Settle'],
'CLG2014': wti_far['Settle']}, index=wti_far.index)
# Create the dictionary of expiry dates for each contract
expiry_dates = pd.Series({'CLF2014': datetime.datetime(2013, 12, 19),
'CLG2014': datetime.datetime(2014, 2, 21)}).order()
# Obtain the rollover weighting matrix/DataFrame
weights = futures_rollover_weights(wti_near.index[0], expiry_dates, wti.columns)
# Construct the continuous future of the WTI CL contracts
wti_cts = (wti * weights).sum(1).dropna()
# Output the merged series of contract settle prices
wti_cts.tail(60)
پیداوار مندرجہ ذیل ہے:
2013-10-14 102.230 2013-10-15 101.240 2013-10-16 102.330 2013-10-17 100.620 2013-10-18 100.990 2013-10-21 99.760 2013-10-22 98.470 2013-10-23 97.000 2013-10-24 97.240 2013-10-25 97.950 ... ... 2013-12-24 99.220 2013-12-26 99.550 2013-12-27 100.320 2013-12-30 99.290 2013-12-31 98.420 2014-01-02 95.440 2014-01-03 93.960 2014-01-06 93.430 2014-01-07 93.670 2014-01-08 92،330 لمبائی: 60، ڈی ٹائپ: فلوٹ64
یہ دیکھا جاسکتا ہے کہ یہ سلسلہ اب دونوں معاہدوں میں مستقل ہے۔ اگلا مرحلہ یہ ہے کہ آپ کی بیک ٹیسٹنگ کی ضروریات پر منحصر ہے ، مختلف سالوں میں متعدد ترسیل کے ل.