Options Symbol (OSI Format) புரிந்துகொள்வது எப்படி?
OSI குறியீட்டில் உள்ள root, காலாவதி தேதி, call அல்லது put குறியீடு மற்றும் எட்டு இலக்க strike price ஆகியவற்றை எவ்வாறு புரிந்துகொள்வது என்பதை விரிவாகக் காண்போம்.
ஒரு option குறியீடு (symbol) என்பது நான்கு தகவல்களைக் கொண்ட ஒரு ஒற்றைச் சரமாகும் (string): அடிப்படைப் பங்கின் (underlying) root, காலாவதி தேதி (expiration date), call அல்லது put என்பதைக் குறிக்கும் குறியீடு, மற்றும் strike price. 2010-ல் அமெரிக்க option தொழில் துறை ஏற்றுக்கொண்ட Options Symbology Initiative-ன் படி, இந்த அமைப்பு OSI என்று அழைக்கப்படுகிறது. ஒவ்வொரு order ticket மற்றும் தரவுத் தொகுப்பும் (data feed) இதன் அடிப்படையிலேயே கட்டமைக்கப்பட்டுள்ளன. இந்த நான்கு புலங்களை (fields) ஒருமுறை கற்றுக்கொண்டால், அமெரிக்க சந்தையில் பட்டியலிடப்பட்ட எந்தவொரு option குறியீட்டையும் உங்களால் எளிதாகப் புரிந்துகொள்ள முடியும்.
ஒரு option குறியீட்டில் உள்ள நான்கு புலங்கள் யாவை?
ஒரு முறையான OSI குறியீடு 21 எழுத்துகளைக் கொண்டது, அவை ஒரு நிலையான வரிசையில் இருக்கும்:
- Root: ஆறு எழுத்துகள். அடிப்படைப் பங்கின் root ஆறு எழுத்துகளுக்குக் குறைவாக இருந்தால், இடதுபுறம் சீரமைக்கப்பட்டு, வலதுபுறம் இடைவெளிகளால் (spaces) நிரப்பப்படும்.
- காலாவதி தேதி: ஆறு இலக்கங்கள், YYMMDD வரிசையில். 260116 என்பது ஜனவரி 16, 2026-ஐக் குறிக்கும்.
- வகை (Right): ஒரு எழுத்து: C என்பது call, P என்பது put.
- Strike price: எட்டு இலக்கங்கள், தசம புள்ளி இல்லாமல் டாலரின் ஆயிரத்தில் ஒரு பங்காக (thousandths of a dollar) குறிப்பிடப்படும்.
பெரும்பாலான தரகர்கள் மற்றும் இணையதளங்கள் இந்த இடைவெளிகளை நீக்கி சுருக்கமான வடிவத்தைக் காட்டுகின்றன. சில தரவுத் தொகுப்புகள் சரத்திற்கு முன்னால் O: போன்ற குறியீடுகளைச் சேர்க்கின்றன. இது குறியீட்டைப் பிரித்தெடுக்கும் முறையை மாற்றாது. கடைசி 15 எழுத்துகள் எப்போதும் தேதி, வகை மற்றும் strike price ஆகியவற்றைக் குறிக்கும், எனவே அவற்றுக்கு முன்னால் இருப்பதுதான் root. கீழே உள்ள அட்டவணை, உண்மையான ஒப்பந்தங்களை இந்த விதியின்படி பிரித்து, அந்த ஒப்பந்தத்தின் பதிவில் உள்ள காலாவதி தேதியுடன் ஒப்பிட்டுக் காட்டுகிறது.
ஒவ்வொரு எண்ணின் பின்னணியில் உள்ள துல்லியமான SQL
SELECT
contract,
substring(contract, 1, length(contract) - 15) AS root,
substring(contract, length(contract) - 14, 6) AS expiry_field,
substring(contract, length(contract) - 8, 1) AS right_code,
substring(contract, length(contract) - 7, 8) AS strike_field,
toFloat64(substring(contract, length(contract) - 7, 8)) / 1000 AS strike_dollars,
listed_expiration
FROM
(
SELECT
replaceRegexpOne(ticker, '^O:', '') AS contract,
formatDateTime(any(expiration_date), '%b %e, %Y') AS listed_expiration
FROM global_markets.options_greeks
WHERE underlying_symbol = 'SPY'
AND expiration_date = '2026-01-16'
AND toFloat64(strike_price) IN (500, 600, 650, 700)
AND date >= '2025-12-01'
AND date < '2026-01-01'
GROUP BY contract
)
ORDER BY strike_dollars ASC, right_code ASCமுதல் வரிசையைப் பிரித்தால், root SPY, தேதி 260116, வகை C மற்றும் strike price 00500000 என அமைகிறது. இது 500 டாலர் strike price-ஐத் தருகிறது. ஒப்பந்தத்தின் சொந்த காலாவதி பதிவு Jan 16, 2026 என்று உள்ளது, இது சரத்தில் உள்ள ஆறு இலக்கங்களுடன் ஒத்துப்போகிறது. இந்த அட்டவணையில் 8 ஒப்பந்தங்கள் உள்ளன: ஒரே strike price-ல் call மற்றும் put என இரண்டும் பட்டியலிடப்பட்டுள்ளன. ஒரு எழுத்து மட்டுமே call மற்றும் put-ஐ வேறுபடுத்துகிறது, அதனால்தான் order ticket-ல் அந்த எழுத்தை இருமுறை சரிபார்க்க வேண்டும். உங்கள் தரகர் திரையில் இந்தப் புலங்கள் தெரிந்தால், option chain-ஐ வாசித்தல் என்ற பகுதி அவற்றைச் சுற்றியுள்ள நெடுவரிசைகளை விளக்குகிறது.
கட்டளை வரியில் (command line) ஒரு option குறியீட்டை வாசிப்பது எப்படி?
இதற்கு எந்த நூலகங்களோ (libraries) அல்லது இணைய இணைப்போ தேவையில்லை. புலங்கள் வலதுபுறத்திலிருந்து நிலையான அகலத்தைக் கொண்டிருப்பதால், bash-ல் substring expansion போதுமானது. இதை terminal-ல் உள்ளிடவும்:
SYM=SPY260116C00650000
echo "root ${SYM:0:$(( ${#SYM} - 15 ))}"
echo "expiry ${SYM: -15:6}"
echo "right ${SYM: -9:1}"
echo "strike ${SYM: -8}"
ஒவ்வொரு negative offset-க்கு முன்னால் இடைவெளி அவசியம். இல்லையெனில், bash :--ஐ ஒரு default value expansion-ஆகக் கருதி தவறான முடிவைத் தரும்.
குறியீடுகளின் பட்டியலுக்கு, awk அதே கணக்கீட்டை ஒரு அடிப்படையிலான நிலைகளைக் கொண்டு செய்கிறது:
awk '{
n = length($0)
root = substr($0, 1, n - 15)
expiry = substr($0, n - 14, 6)
right = substr($0, n - 8, 1)
strike = substr($0, n - 7, 8)
printf "%-6s 20%s-%s-%s %-4s $%.3f\n",
root,
substr(expiry, 1, 2), substr(expiry, 3, 2), substr(expiry, 5, 2),
(right == "C" ? "call" : "put"),
strike / 1000
}' <<'EOF'
SPY260116C00650000
SPY260116P00650000
SPXW260116C05500000
XYZ1260116C00007500
EOF
python3 பதிப்பு, நிரப்பப்பட்ட 21 எழுத்து வடிவத்தையும் feed prefix-ஐயும் ஒரே செயல்பாட்டில் கையாள்கிறது:
from datetime import datetime
def parse_osi(symbol):
s = symbol.strip()
if s.startswith("O:"):
s = s[2:]
s = s.replace(" ", "")
return {
"root": s[:-15],
"expiry": datetime.strptime(s[-15:-9], "%y%m%d").date(),
"right": "call" if s[-9] == "C" else "put",
"strike": int(s[-8:]) / 1000,
}
samples = [
"SPY 260116C00650000",
"O:SPY260116P00650000",
"SPXW 260116C05500000",
"XYZ1 260116C00007500",
]
for sym in samples:
f = parse_osi(sym)
print("{:<6} {} {:<4} ${:,.3f}".format(f["root"], f["expiry"], f["right"], f["strike"]))
இந்த இரண்டு குறியீடுகளும் awk மற்றும் python3 மட்டுமே கொண்ட Ubuntu image-ல் இயங்கும். இவை இணையத்தை அணுகாததால், இன்றும் ஐந்து ஆண்டுகள் கழித்தும் ஒரே மாதிரியான முடிவைத் தரும்.
00007500 என்ற strike price ஏன் $7.50 என்று பொருள்படுகிறது?
Strike price புலம் எட்டு இலக்கங்களைக் கொண்டது, தசம புள்ளி கிடையாது. இதன் அலகு டாலரின் ஆயிரத்தில் ஒரு பங்கு. டாலராக மாற்ற 1,000-ஆல் வகுக்கவும். 00007500 என்பது 7,500 ஆயிரத்தில் ஒரு பங்கு, அதாவது $7.50. 07500000 என்பது 7,500,000 ஆயிரத்தில் ஒரு பங்கு, அதாவது $7,500. இந்த இரண்டிற்கும் இடையே உள்ள மூன்று பூஜ்ஜியங்களே பெரும்பாலும் தவறாகப் புரிந்துகொள்ளப்படுகின்றன. நிலையான அகலம் ஒவ்வொரு குறியீட்டையும் ஒரே நீளத்தில் வைத்திருக்கிறது, மேலும் ஆயிரத்தில் ஒரு பங்கு என்ற அலகு, கார்ப்பரேட் நடவடிக்கைகளுக்குப் பிறகு வரும் பின்னங்களைச் சரியாகக் குறிக்க உதவுகிறது.
குறைந்த விலை பங்குகள் முதல் நான்கு இலக்க குறியீட்டு நிலைகள் வரை அனைத்தையும் ஒரே புலம் கையாள வேண்டும். கீழே உள்ள அட்டவணை, பல அடிப்படைப் பங்குகளின் மிகக்குறைந்த மற்றும் மிக உயர்ந்த strike price-களைக் காட்டுகிறது.
ஒவ்வொரு எண்ணின் பின்னணியில் உள்ள துல்லியமான SQL
SELECT
underlying,
round(toFloat64(min(strike)), 2) AS lowest_strike,
argMin(strike_field, strike) AS lowest_strike_field,
round(toFloat64(max(strike)), 2) AS highest_strike,
argMax(strike_field, strike) AS highest_strike_field,
uniqExact(strike) AS strike_count
FROM
(
SELECT
underlying_symbol AS underlying,
strike_price AS strike,
substring(replaceRegexpOne(ticker, '^O:', ''),
length(replaceRegexpOne(ticker, '^O:', '')) - 7, 8) AS strike_field
FROM global_markets.options_greeks
WHERE underlying_symbol IN ('KO', 'NVDA', 'AAPL', 'SPY', 'SPX')
AND date >= today() - 7
)
GROUP BY underlying
ORDER BY highest_strike ASCகாணப்படும் அமர்வுகளில், KO ஆனது $32.5 முதல் $125 வரையிலான strike price-களைக் காட்டுகிறது, இவை குறியீட்டிற்குள் 00032500 மற்றும் 00125000 என எழுதப்படுகின்றன. அட்டவணையின் இறுதியில், SPY ஆனது $1480 அல்லது 01480000-ஐ அடைகிறது, இது 462 தனித்துவமான strike price-களில் பரவியுள்ளது. விலை எதுவாக இருந்தாலும், அதே எட்டு இலக்கங்கள் மற்றும் அதே வகுத்தல் முறைதான் பயன்படுத்தப்படுகிறது.
சரிசெய்யப்பட்ட (Adjusted) options: root-ன் இறுதியில் உள்ள எண் எதைக் குறிக்கிறது?
ஒரு சாதாரண பங்கு option 100 பங்குகளை வழங்குகிறது. கார்ப்பரேட் நடவடிக்கைகள் இதை மாற்றலாம்: பங்குப் பிரிப்பு (split), பணமாகப் பெறப்படும் இணைப்பு (merger), spinoff, அல்லது சிறப்பு dividend. OCC திறந்திருக்கும் ஒப்பந்தங்களைச் சரிசெய்து, பழைய root-உடன் ஒரு எண்ணைச் சேர்த்து புதிய root-ஐ வழங்குகிறது. ABC என்பது முதல் மாற்றத்தில் ABC1 என்றும், இரண்டாவது மாற்றத்தில் ABC2 என்றும் மாறும். அமைப்பு மாறாது, எனவே உங்கள் parser தொடர்ந்து வேலை செய்யும். ஆனால் ஒப்பந்தத்தின் கீழ் கிடைக்கும் பங்குகள் மாறும், இது குறியீட்டில் குறிப்பிடப்படாது.
இறுதியில் உள்ள எண் mini contracts-ஐயும் குறிக்கும், அவை 7-ஆல் குறிக்கப்படும்; இவை 100 பங்குகளுக்குப் பதிலாக 10 பங்குகளைக் கொண்டிருக்கும். எதுவாக இருந்தாலும், strike price-ஐ ஒப்பிடுவதற்கு முன்பு ஒப்பந்த விதிமுறைகளைப் படிக்க வேண்டும் என்பதற்கான எச்சரிக்கையே இந்த எண். பங்குப் பிரிப்பு options-ஐ எவ்வாறு பாதிக்கிறது என்ற எங்கள் குறிப்பு, strike price மற்றும் பங்குகள் குறித்த கணிதத்தை விளக்குகிறது.
சரிசெய்யப்பட்ட தொடர்கள் அரிதாகவே புதிய காலாவதி தேதிகளுடன் நீட்டிக்கப்படுகின்றன. ABC1 போன்ற ஒரு root, அதன் காலாவதி தேதிகள் முடிவடையும் போது மறைந்துவிடும். ஒப்பந்தத்தின் விதிமுறைகள் குறியீட்டில் இல்லாமல், OCC-ன் சரிசெய்தல் குறிப்பாணையில் (adjustment memo) இருக்கும். அந்த குறிப்பாணையைப் படிக்கும் வரை, ஒரே root-ல் உள்ள சரிசெய்யப்பட்ட strike price மற்றும் சாதாரண strike price ஆகிய இரண்டும் வெவ்வேறு விஷயங்கள்.
SPX, SPXW மற்றும் W எதைக் குறிக்கிறது?
குறியீட்டு (Index) options-க்கு அவற்றின் சொந்த root உண்டு. SPX மற்றும் SPXW ஒரே குறியீட்டைக் குறிக்கின்றன மற்றும் ஒரே 21 எழுத்து அமைப்பைப் பகிர்ந்து கொள்கின்றன. W என்பது வாராந்திரப் பட்டியலைக் குறிப்பதில்லை. SPX என்பது AM-ல் தீர்வு (settlement) செய்யப்படும் root: மூன்றாவது வெள்ளிக்கிழமை ஒப்பந்தம், இதன் தீர்வு மதிப்பு வெள்ளிக்கிழமை காலை தொடக்க விலையிலிருந்து கணக்கிடப்படுகிறது. SPXW என்பது PM-ல் தீர்வு செய்யப்படும் root, இது திங்கள் முதல் வெள்ளி வரையிலான தினசரி மற்றும் மாத இறுதி ஒப்பந்தங்களை உள்ளடக்கியது.
காலண்டர் இதே அடிப்படையில் பிரிக்கப்படுகிறது. ஒரு மாதத்திற்கு ஒரு AM தீர்வு ஒப்பந்தம் SPX root-ல் இருக்கும். மற்ற அனைத்து எதிர்காலத் தேதிகளும் SPXW-க்குச் சொந்தமானவை. குறியீடு இதைப் பற்றி எதையும் சொல்வதில்லை: root ஒரு குறிப்பு மட்டுமே, ஒப்பந்த விவரக்குறிப்பே (contract specification) அதிகாரப்பூர்வமானது. இரண்டு root-கள், ஒரு குறியீடு, ஒரு திரை, மற்றும் தீர்வு முறைகள் குறித்து AM மற்றும் PM தீர்வு செய்யப்பட்ட options விரிவாக விளக்குகிறது.
ஒரு option குறியீடு சொல்லாதவை
நான்கு புலங்களும் ஒரு ஒப்பந்தத்தை முழுமையாக அடையாளம் காணும், ஆனால் அதன் விவரங்களை மிகக் குறைவாகவே விவரிக்கும். குறிப்பாக:
- Multiplier: ஒரு சாதாரண அமெரிக்க பங்கு option 100 பங்குகளைக் குறிக்கும், இது குறியீட்டில் இல்லை.
- தீர்வு முறை: AM அல்லது PM தீர்வு, பணத் தீர்வு அல்லது பங்குகளை வழங்குதல் என்பது குறியீட்டில் இல்லை.
- கிடைக்கும் பங்குகள்: சரிசெய்தலுக்குப் பிறகு, 100 பங்குகள் என்ற அனுமானம் செல்லாது.
- மீதமுள்ள காலம்: தேதி என்பது காலாவதி தேதியே தவிர, மீதமுள்ள நாட்கள் அல்ல. இதை காலாவதிக்கு மீதமுள்ள நாட்கள் என நீங்களே கணக்கிட வேண்டும்.
- பணப்புழக்கம் (Liquidity): ஒரே அமைப்பைக் கொண்ட இரண்டு குறியீடுகள் volume மற்றும் open interest அடிப்படையில் முற்றிலும் மாறுபட்டிருக்கலாம்.
அடிக்கடி கேட்கப்படும் கேள்விகள் (FAQ)
ஒரு option குறியீடு எத்தனை எழுத்துகளைக் கொண்டது?
முறையான OSI வடிவத்தில் 21 எழுத்துகள்: ஆறு root-க்கு, ஆறு தேதிக்கு, ஒன்று வகைக்காக, மற்றும் எட்டு strike price-க்கு. ஆறு எழுத்துகளுக்குக் குறைவான root-கள் இடைவெளிகளால் நிரப்பப்படுகின்றன, பெரும்பாலான திரைகள் அதை நீக்கிவிடுவதால், மூன்று எழுத்து root பொதுவாக 18 எழுத்துகளாகத் தெரியும்.
ஒரு option குறியீட்டில் root-க்கு பின்னால் உள்ள எண் எதைக் குறிக்கிறது?
இது தரநிலையான ஒப்பந்தம் அல்ல என்பதைக் குறிக்கிறது. OCC-ஆல் சேர்க்கப்பட்ட ஒரு எண், கார்ப்பரேட் நடவடிக்கைக்குப் பிறகு சரிசெய்யப்பட்ட தொடரைக் குறிக்கிறது; 7 என்பது 100 பங்குகளுக்குப் பதிலாக 10 பங்குகளைக் கொண்ட mini contract-ஐக் குறிக்கிறது. தேதி மற்றும் strike price புலங்கள் எப்போதும் போலவே செயல்படும்.
strike price ஏன் எட்டு இலக்கங்களைக் கொண்டது?
இந்த புலம் strike price-ஐ டாலரின் ஆயிரத்தில் ஒரு பங்காக, தசம புள்ளி இல்லாமல் ஒரு நிலையான முழு எண்ணாகக் கொண்டுள்ளது. எட்டு இலக்கங்களை 1,000-ஆல் வகுத்தால் டாலர் மதிப்பு கிடைக்கும்: 00007500 என்பது $7.50.
SPXW மற்றும் SPX ஒன்றா?
அவை ஒரே குறியீட்டைக் குறிக்கின்றன மற்றும் ஒரே குறியீட்டு அமைப்பைப் பயன்படுத்துகின்றன. ஆனால் தீர்வு முறை மாறுபடும். SPX ஒப்பந்தங்கள் வெள்ளிக்கிழமை காலை தொடக்க விலையில் தீர்வு செய்யப்படுகின்றன, SPXW ஒப்பந்தங்கள் காலாவதி நாளின் இறுதி விலையில் தீர்வு செய்யப்படுகின்றன.
ஒரு option குறியீடு வாராந்திரமா அல்லது மாதந்திரமா என்பதைக் காட்டுமா?
அமெரிக்கப் பங்குகளுக்கு, இல்லை. ஒரே அடிப்படைப் பங்கின் வாராந்திர மற்றும் மாதந்திர ஒப்பந்தங்கள் ஒரே root-ஐக் கொண்டுள்ளன, தேதி மட்டுமே மாறுபடும். மூன்றாவது வெள்ளிக்கிழமை முறைதான் ஒரு தேதியை மாதந்திரமாக மாற்றுகிறது, குறியீட்டுத் தொகுப்புகள் இதற்காகத் தனித்தனி root-களைப் பயன்படுத்துகின்றன.
இந்தப் பக்கத்தில் உள்ள ஒவ்வொரு அட்டவணையும் அதை உருவாக்கிய SQL குறியீட்டைக் கொண்டுள்ளது. நீங்கள் தற்போது பார்க்கும் ஒரு குறியீட்டைப் பிரிக்க, Strasmore terminal-ல் அதை எளிய ஆங்கிலத்தில் கேட்கவும்.