{"id":576,"date":"2026-08-11T10:37:50","date_gmt":"2026-08-11T10:37:50","guid":{"rendered":"https:\/\/www.stockmaster.in\/universe\/?p=576"},"modified":"2026-08-11T10:41:51","modified_gmt":"2026-08-11T10:41:51","slug":"multi-leg-fno-strategy-generator","status":"publish","type":"post","link":"https:\/\/www.stockmaster.in\/universe\/multi-leg-fno-strategy-generator\/","title":{"rendered":"Multi-Leg F&#038;O Strategy Generator"},"content":{"rendered":"<div class=\"smmlsg-tool\">\r\n\r\n  <div class=\"smmlsg-header\">\r\n    <div class=\"smmlsg-badge\">STOCKMASTER UNIVERSE<\/div>\r\n\r\n    <h2>Multi-Leg F&amp;O Strategy Generator<\/h2>\r\n\r\n    <p>\r\n      Build multi-leg futures and options strategies and analyse\r\n      premium, breakeven, maximum profit, maximum loss and expiry payoff.\r\n    <\/p>\r\n  <\/div>\r\n\r\n\r\n  <div class=\"smmlsg-body\">\r\n\r\n    <!-- BASIC SETTINGS -->\r\n\r\n    <div class=\"smmlsg-section-title\">\r\n      <span>1<\/span>\r\n      Strategy Settings\r\n    <\/div>\r\n\r\n    <div class=\"smmlsg-grid\">\r\n\r\n      <div class=\"smmlsg-field\">\r\n        <label>Underlying Price (\u20b9)<\/label>\r\n        <input\r\n          type=\"number\"\r\n          class=\"smmlsg-spot\"\r\n          value=\"25000\"\r\n          min=\"0.01\"\r\n          step=\"0.01\">\r\n      <\/div>\r\n\r\n      <div class=\"smmlsg-field\">\r\n        <label>Lot Size<\/label>\r\n        <input\r\n          type=\"number\"\r\n          class=\"smmlsg-lot\"\r\n          value=\"75\"\r\n          min=\"1\"\r\n          step=\"1\">\r\n      <\/div>\r\n\r\n      <div class=\"smmlsg-field\">\r\n        <label>Expiry \/ Analysis Range<\/label>\r\n        <select class=\"smmlsg-range\">\r\n          <option value=\"1000\">\u00b1 \u20b91,000<\/option>\r\n          <option value=\"2000\" selected>\u00b1 \u20b92,000<\/option>\r\n          <option value=\"3000\">\u00b1 \u20b93,000<\/option>\r\n          <option value=\"5000\">\u00b1 \u20b95,000<\/option>\r\n        <\/select>\r\n      <\/div>\r\n\r\n      <div class=\"smmlsg-field\">\r\n        <label>Price Steps<\/label>\r\n        <select class=\"smmlsg-steps\">\r\n          <option value=\"100\">\u20b9100<\/option>\r\n          <option value=\"250\" selected>\u20b9250<\/option>\r\n          <option value=\"500\">\u20b9500<\/option>\r\n        <\/select>\r\n      <\/div>\r\n\r\n    <\/div>\r\n\r\n\r\n    <!-- STRATEGY PRESETS -->\r\n\r\n    <div class=\"smmlsg-section-title smmlsg-space\">\r\n      <span>2<\/span>\r\n      Quick Strategy Templates\r\n    <\/div>\r\n\r\n    <div class=\"smmlsg-presets\">\r\n\r\n      <button type=\"button\" data-preset=\"bull-call\">\r\n        Bull Call Spread\r\n      <\/button>\r\n\r\n      <button type=\"button\" data-preset=\"bear-put\">\r\n        Bear Put Spread\r\n      <\/button>\r\n\r\n      <button type=\"button\" data-preset=\"bull-put\">\r\n        Bull Put Spread\r\n      <\/button>\r\n\r\n      <button type=\"button\" data-preset=\"bear-call\">\r\n        Bear Call Spread\r\n      <\/button>\r\n\r\n      <button type=\"button\" data-preset=\"straddle\">\r\n        Long Straddle\r\n      <\/button>\r\n\r\n      <button type=\"button\" data-preset=\"strangle\">\r\n        Long Strangle\r\n      <\/button>\r\n\r\n      <button type=\"button\" data-preset=\"iron-condor\">\r\n        Iron Condor\r\n      <\/button>\r\n\r\n      <button type=\"button\" data-preset=\"clear\">\r\n        Clear All\r\n      <\/button>\r\n\r\n    <\/div>\r\n\r\n\r\n    <!-- LEGS -->\r\n\r\n    <div class=\"smmlsg-section-title smmlsg-space\">\r\n      <span>3<\/span>\r\n      Strategy Legs\r\n    <\/div>\r\n\r\n    <div class=\"smmlsg-info\">\r\n      Add up to 6 legs. Enter a positive quantity for each leg.\r\n      Premium is entered per unit. Buy legs are marked as debit and\r\n      Sell legs as credit.\r\n    <\/div>\r\n\r\n\r\n    <div class=\"smmlsg-legs-wrap\">\r\n\r\n      <div class=\"smmlsg-legs-head\">\r\n\r\n        <span>Leg<\/span>\r\n        <span>Action<\/span>\r\n        <span>Type<\/span>\r\n        <span>Strike<\/span>\r\n        <span>Premium<\/span>\r\n        <span>Qty<\/span>\r\n        <span><\/span>\r\n\r\n      <\/div>\r\n\r\n      <div class=\"smmlsg-legs\"><\/div>\r\n\r\n    <\/div>\r\n\r\n\r\n    <button\r\n      type=\"button\"\r\n      class=\"smmlsg-add\">\r\n      + Add Leg\r\n    <\/button>\r\n\r\n\r\n    <button\r\n      type=\"button\"\r\n      class=\"smmlsg-calculate\">\r\n      Generate Strategy\r\n    <\/button>\r\n\r\n\r\n    <div class=\"smmlsg-error\"><\/div>\r\n\r\n\r\n    <!-- RESULTS -->\r\n\r\n    <div class=\"smmlsg-results\">\r\n\r\n      <div class=\"smmlsg-section-title smmlsg-space\">\r\n        <span>4<\/span>\r\n        Strategy Analysis\r\n      <\/div>\r\n\r\n\r\n      <div class=\"smmlsg-result-grid\">\r\n\r\n        <div class=\"smmlsg-card smmlsg-primary\">\r\n          <small>Strategy Type<\/small>\r\n          <strong class=\"smmlsg-strategy-name\">\r\n            Custom Strategy\r\n          <\/strong>\r\n        <\/div>\r\n\r\n        <div class=\"smmlsg-card\">\r\n          <small>Net Premium<\/small>\r\n          <strong class=\"smmlsg-net-premium\">\r\n            \u20b90\r\n          <\/strong>\r\n        <\/div>\r\n\r\n        <div class=\"smmlsg-card\">\r\n          <small>Maximum Profit<\/small>\r\n          <strong class=\"smmlsg-max-profit\">\r\n            \u20b90\r\n          <\/strong>\r\n        <\/div>\r\n\r\n        <div class=\"smmlsg-card\">\r\n          <small>Maximum Loss<\/small>\r\n          <strong class=\"smmlsg-max-loss\">\r\n            \u20b90\r\n          <\/strong>\r\n        <\/div>\r\n\r\n        <div class=\"smmlsg-card\">\r\n          <small>Lower Breakeven<\/small>\r\n          <strong class=\"smmlsg-lower-be\">\r\n            \u2014\r\n          <\/strong>\r\n        <\/div>\r\n\r\n        <div class=\"smmlsg-card\">\r\n          <small>Upper Breakeven<\/small>\r\n          <strong class=\"smmlsg-upper-be\">\r\n            \u2014\r\n          <\/strong>\r\n        <\/div>\r\n\r\n        <div class=\"smmlsg-card\">\r\n          <small>Net Debit \/ Credit<\/small>\r\n          <strong class=\"smmlsg-debit-credit\">\r\n            \u2014\r\n          <\/strong>\r\n        <\/div>\r\n\r\n        <div class=\"smmlsg-card\">\r\n          <small>Position Legs<\/small>\r\n          <strong class=\"smmlsg-leg-count\">\r\n            0\r\n          <\/strong>\r\n        <\/div>\r\n\r\n      <\/div>\r\n\r\n\r\n      <!-- STRATEGY DESCRIPTION -->\r\n\r\n      <div class=\"smmlsg-panel\">\r\n\r\n        <h3>Strategy Overview<\/h3>\r\n\r\n        <p class=\"smmlsg-overview\"><\/p>\r\n\r\n      <\/div>\r\n\r\n\r\n      <!-- PAYOFF TABLE -->\r\n\r\n      <div class=\"smmlsg-panel\">\r\n\r\n        <h3>Expiry Payoff Analysis<\/h3>\r\n\r\n        <div class=\"smmlsg-table-wrap\">\r\n\r\n          <table class=\"smmlsg-payoff-table\">\r\n\r\n            <thead>\r\n\r\n              <tr>\r\n                <th>Underlying at Expiry<\/th>\r\n                <th>Payoff \/ Unit<\/th>\r\n                <th>Total P&amp;L<\/th>\r\n                <th>Status<\/th>\r\n              <\/tr>\r\n\r\n            <\/thead>\r\n\r\n            <tbody class=\"smmlsg-payoff-body\"><\/tbody>\r\n\r\n          <\/table>\r\n\r\n        <\/div>\r\n\r\n      <\/div>\r\n\r\n\r\n      <!-- PROFIT LOSS ZONES -->\r\n\r\n      <div class=\"smmlsg-panel\">\r\n\r\n        <h3>Profit &amp; Loss Zones<\/h3>\r\n\r\n        <div class=\"smmlsg-zone-grid\">\r\n\r\n          <div class=\"smmlsg-zone\">\r\n\r\n            <span>Maximum Profit<\/span>\r\n\r\n            <strong class=\"smmlsg-zone-profit\">\r\n              \u20b90\r\n            <\/strong>\r\n\r\n          <\/div>\r\n\r\n          <div class=\"smmlsg-zone\">\r\n\r\n            <span>Maximum Loss<\/span>\r\n\r\n            <strong class=\"smmlsg-zone-loss\">\r\n              \u20b90\r\n            <\/strong>\r\n\r\n          <\/div>\r\n\r\n          <div class=\"smmlsg-zone\">\r\n\r\n            <span>Profit Range<\/span>\r\n\r\n            <strong class=\"smmlsg-zone-range\">\r\n              \u2014\r\n            <\/strong>\r\n\r\n          <\/div>\r\n\r\n        <\/div>\r\n\r\n      <\/div>\r\n\r\n\r\n      <!-- LEG SUMMARY -->\r\n\r\n      <div class=\"smmlsg-panel\">\r\n\r\n        <h3>Leg Summary<\/h3>\r\n\r\n        <div class=\"smmlsg-table-wrap\">\r\n\r\n          <table class=\"smmlsg-leg-table\">\r\n\r\n            <thead>\r\n\r\n              <tr>\r\n                <th>Leg<\/th>\r\n                <th>Action<\/th>\r\n                <th>Type<\/th>\r\n                <th>Strike<\/th>\r\n                <th>Premium<\/th>\r\n                <th>Quantity<\/th>\r\n              <\/tr>\r\n\r\n            <\/thead>\r\n\r\n            <tbody class=\"smmlsg-leg-summary\"><\/tbody>\r\n\r\n          <\/table>\r\n\r\n        <\/div>\r\n\r\n      <\/div>\r\n\r\n\r\n      <!-- INTERPRETATION -->\r\n\r\n      <div class=\"smmlsg-interpretation\">\r\n\r\n        <h3>What This Means<\/h3>\r\n\r\n        <p class=\"smmlsg-interpretation-text\"><\/p>\r\n\r\n      <\/div>\r\n\r\n\r\n      <div class=\"smmlsg-disclaimer\">\r\n\r\n        <strong>Important:<\/strong>\r\n        This calculator shows an estimated expiry payoff based on the\r\n        option legs and premiums entered by the user. It does not model\r\n        intraday option pricing, implied volatility changes, Greeks,\r\n        slippage, brokerage, taxes, early exercise or changes in time\r\n        value. Actual trading results may differ substantially.\r\n\r\n      <\/div>\r\n\r\n    <\/div>\r\n\r\n  <\/div>\r\n\r\n\r\n  <div class=\"smmlsg-footer\">\r\n    StockMaster Universe \u2022 F&amp;O Trading Tools\r\n  <\/div>\r\n\r\n<\/div>\r\n\r\n\r\n<style>\r\n\r\n.smmlsg-tool {\r\n  max-width: 1150px;\r\n  margin: 30px auto;\r\n  background: #fff;\r\n  border: 1px solid #e5e7eb;\r\n  border-radius: 18px;\r\n  overflow: hidden;\r\n  box-shadow: 0 8px 28px rgba(0,0,0,.07);\r\n  font-family: Arial, Helvetica, sans-serif;\r\n  color: #1f2937;\r\n}\r\n\r\n.smmlsg-tool *,\r\n.smmlsg-tool *:before,\r\n.smmlsg-tool *:after {\r\n  box-sizing: border-box;\r\n}\r\n\r\n.smmlsg-header {\r\n  background: #5b21b6;\r\n  color: #fff;\r\n  text-align: center;\r\n  padding: 30px 24px;\r\n}\r\n\r\n.smmlsg-badge {\r\n  display: inline-block;\r\n  padding: 5px 10px;\r\n  border: 1px solid rgba(255,255,255,.35);\r\n  border-radius: 30px;\r\n  color: #f3e8ff;\r\n  font-size: 10px;\r\n  letter-spacing: 1px;\r\n  margin-bottom: 10px;\r\n}\r\n\r\n.smmlsg-header h2 {\r\n  margin: 0 0 8px;\r\n  color: #fff;\r\n  font-size: 28px;\r\n  line-height: 1.3;\r\n}\r\n\r\n.smmlsg-header p {\r\n  max-width: 800px;\r\n  margin: auto;\r\n  color: #ede9fe;\r\n  font-size: 15px;\r\n  line-height: 1.6;\r\n}\r\n\r\n.smmlsg-body {\r\n  padding: 26px;\r\n}\r\n\r\n.smmlsg-section-title {\r\n  display: flex;\r\n  align-items: center;\r\n  gap: 9px;\r\n  margin-bottom: 18px;\r\n  color: #111827;\r\n  font-size: 18px;\r\n  font-weight: 700;\r\n}\r\n\r\n.smmlsg-section-title span {\r\n  width: 27px;\r\n  height: 27px;\r\n  display: inline-flex;\r\n  align-items: center;\r\n  justify-content: center;\r\n  border-radius: 50%;\r\n  background: #5b21b6;\r\n  color: #fff;\r\n  font-size: 13px;\r\n}\r\n\r\n.smmlsg-space {\r\n  margin-top: 28px;\r\n}\r\n\r\n.smmlsg-grid {\r\n  display: grid;\r\n  grid-template-columns: repeat(4,1fr);\r\n  gap: 15px;\r\n}\r\n\r\n.smmlsg-field label {\r\n  display: block;\r\n  margin-bottom: 7px;\r\n  color: #374151;\r\n  font-size: 13px;\r\n  font-weight: 700;\r\n}\r\n\r\n.smmlsg-field input,\r\n.smmlsg-field select {\r\n  width: 100%;\r\n  padding: 12px 13px;\r\n  border: 1px solid #d1d5db;\r\n  border-radius: 9px;\r\n  background: #fff;\r\n  color: #111827;\r\n  font-size: 14px;\r\n  outline: none;\r\n}\r\n\r\n.smmlsg-field input:focus,\r\n.smmlsg-field select:focus {\r\n  border-color: #7c3aed;\r\n  box-shadow: 0 0 0 3px rgba(124,58,237,.10);\r\n}\r\n\r\n.smmlsg-presets {\r\n  display: flex;\r\n  flex-wrap: wrap;\r\n  gap: 8px;\r\n}\r\n\r\n.smmlsg-presets button {\r\n  padding: 9px 13px;\r\n  border: 1px solid #c4b5fd;\r\n  border-radius: 8px;\r\n  background: #fff;\r\n  color: #5b21b6;\r\n  font-size: 12px;\r\n  font-weight: 700;\r\n  cursor: pointer;\r\n}\r\n\r\n.smmlsg-presets button:hover {\r\n  background: #f5f3ff;\r\n}\r\n\r\n.smmlsg-info {\r\n  margin-bottom: 14px;\r\n  padding: 14px 16px;\r\n  border: 1px solid #ddd6fe;\r\n  border-radius: 10px;\r\n  background: #f5f3ff;\r\n  color: #4c1d95;\r\n  font-size: 12px;\r\n  line-height: 1.6;\r\n}\r\n\r\n.smmlsg-legs-wrap {\r\n  width: 100%;\r\n  overflow-x: auto;\r\n  border: 1px solid #e5e7eb;\r\n  border-radius: 10px;\r\n}\r\n\r\n.smmlsg-legs-head,\r\n.smmlsg-leg-row {\r\n  min-width: 800px;\r\n  display: grid;\r\n  grid-template-columns:\r\n    50px\r\n    1fr\r\n    1fr\r\n    1fr\r\n    1fr\r\n    .8fr\r\n    45px;\r\n  gap: 8px;\r\n  align-items: center;\r\n}\r\n\r\n.smmlsg-legs-head {\r\n  padding: 11px;\r\n  background: #f5f3ff;\r\n  color: #4c1d95;\r\n  font-size: 11px;\r\n  font-weight: 700;\r\n}\r\n\r\n.smmlsg-leg-row {\r\n  padding: 10px;\r\n  border-top: 1px solid #e5e7eb;\r\n}\r\n\r\n.smmlsg-leg-number {\r\n  width: 27px;\r\n  height: 27px;\r\n  display: flex;\r\n  align-items: center;\r\n  justify-content: center;\r\n  border-radius: 50%;\r\n  background: #5b21b6;\r\n  color: #fff;\r\n  font-size: 12px;\r\n  font-weight: 700;\r\n}\r\n\r\n.smmlsg-leg-row select,\r\n.smmlsg-leg-row input {\r\n  width: 100%;\r\n  padding: 9px;\r\n  border: 1px solid #d1d5db;\r\n  border-radius: 7px;\r\n  background: #fff;\r\n  font-size: 12px;\r\n  outline: none;\r\n}\r\n\r\n.smmlsg-remove {\r\n  width: 32px;\r\n  height: 32px;\r\n  border: 0;\r\n  border-radius: 7px;\r\n  background: #fee2e2;\r\n  color: #b91c1c;\r\n  font-size: 20px;\r\n  cursor: pointer;\r\n}\r\n\r\n.smmlsg-add {\r\n  margin-top: 13px;\r\n  padding: 10px 15px;\r\n  border: 1px solid #c4b5fd;\r\n  border-radius: 8px;\r\n  background: #fff;\r\n  color: #5b21b6;\r\n  font-size: 13px;\r\n  font-weight: 700;\r\n  cursor: pointer;\r\n}\r\n\r\n.smmlsg-calculate {\r\n  width: 100%;\r\n  margin-top: 20px;\r\n  padding: 15px;\r\n  border: 0;\r\n  border-radius: 10px;\r\n  background: #5b21b6;\r\n  color: #fff;\r\n  font-size: 16px;\r\n  font-weight: 700;\r\n  cursor: pointer;\r\n}\r\n\r\n.smmlsg-calculate:hover {\r\n  background: #4c1d95;\r\n}\r\n\r\n.smmlsg-error {\r\n  display: none;\r\n  margin-top: 14px;\r\n  padding: 12px;\r\n  border: 1px solid #fecaca;\r\n  border-radius: 8px;\r\n  background: #fef2f2;\r\n  color: #991b1b;\r\n  font-size: 13px;\r\n}\r\n\r\n.smmlsg-results {\r\n  display: none;\r\n  margin-top: 30px;\r\n}\r\n\r\n.smmlsg-result-grid {\r\n  display: grid;\r\n  grid-template-columns: repeat(4,1fr);\r\n  gap: 12px;\r\n}\r\n\r\n.smmlsg-card {\r\n  padding: 17px 10px;\r\n  border: 1px solid #e5e7eb;\r\n  border-radius: 11px;\r\n  background: #fafafa;\r\n  text-align: center;\r\n}\r\n\r\n.smmlsg-card small {\r\n  display: block;\r\n  margin-bottom: 7px;\r\n  color: #6b7280;\r\n  font-size: 11px;\r\n  font-weight: 600;\r\n}\r\n\r\n.smmlsg-card strong {\r\n  display: block;\r\n  color: #4c1d95;\r\n  font-size: 16px;\r\n}\r\n\r\n.smmlsg-primary {\r\n  background: #f5f3ff;\r\n  border-color: #ddd6fe;\r\n}\r\n\r\n.smmlsg-panel {\r\n  margin-top: 22px;\r\n  padding: 20px;\r\n  border: 1px solid #e5e7eb;\r\n  border-radius: 12px;\r\n}\r\n\r\n.smmlsg-panel h3,\r\n.smmlsg-interpretation h3 {\r\n  margin: 0 0 15px;\r\n  color: #111827;\r\n  font-size: 17px;\r\n}\r\n\r\n.smmlsg-panel p {\r\n  margin: 0;\r\n  color: #4b5563;\r\n  font-size: 13px;\r\n  line-height: 1.7;\r\n}\r\n\r\n.smmlsg-table-wrap {\r\n  width: 100%;\r\n  overflow-x: auto;\r\n}\r\n\r\n.smmlsg-payoff-table,\r\n.smmlsg-leg-table {\r\n  width: 100%;\r\n  border-collapse: collapse;\r\n  min-width: 600px;\r\n}\r\n\r\n.smmlsg-payoff-table th,\r\n.smmlsg-leg-table th {\r\n  padding: 10px;\r\n  background: #5b21b6;\r\n  color: #fff;\r\n  font-size: 11px;\r\n  text-align: left;\r\n}\r\n\r\n.smmlsg-payoff-table td,\r\n.smmlsg-leg-table td {\r\n  padding: 10px;\r\n  border-bottom: 1px solid #e5e7eb;\r\n  font-size: 12px;\r\n}\r\n\r\n.smmlsg-payoff-table tr:nth-child(even),\r\n.smmlsg-leg-table tr:nth-child(even) {\r\n  background: #fafafa;\r\n}\r\n\r\n.smmlsg-profit {\r\n  color: #15803d;\r\n  font-weight: 700;\r\n}\r\n\r\n.smmlsg-loss {\r\n  color: #b91c1c;\r\n  font-weight: 700;\r\n}\r\n\r\n.smmlsg-zone-grid {\r\n  display: grid;\r\n  grid-template-columns: repeat(3,1fr);\r\n  gap: 12px;\r\n}\r\n\r\n.smmlsg-zone {\r\n  padding: 18px;\r\n  border-radius: 10px;\r\n  background: #f9fafb;\r\n}\r\n\r\n.smmlsg-zone span {\r\n  display: block;\r\n  margin-bottom: 7px;\r\n  color: #6b7280;\r\n  font-size: 11px;\r\n}\r\n\r\n.smmlsg-zone strong {\r\n  color: #111827;\r\n  font-size: 16px;\r\n}\r\n\r\n.smmlsg-interpretation {\r\n  margin-top: 22px;\r\n  padding: 18px;\r\n  border: 1px solid #ddd6fe;\r\n  border-radius: 11px;\r\n  background: #f5f3ff;\r\n}\r\n\r\n.smmlsg-interpretation p {\r\n  margin: 0;\r\n  color: #4b5563;\r\n  font-size: 13px;\r\n  line-height: 1.7;\r\n}\r\n\r\n.smmlsg-disclaimer {\r\n  margin-top: 22px;\r\n  padding: 15px;\r\n  border: 1px solid #fde68a;\r\n  border-radius: 9px;\r\n  background: #fffbeb;\r\n  color: #78350f;\r\n  font-size: 11px;\r\n  line-height: 1.6;\r\n}\r\n\r\n.smmlsg-footer {\r\n  padding: 14px;\r\n  border-top: 1px solid #e5e7eb;\r\n  background: #f9fafb;\r\n  color: #6b7280;\r\n  text-align: center;\r\n  font-size: 11px;\r\n}\r\n\r\n@media(max-width:900px) {\r\n\r\n  .smmlsg-grid {\r\n    grid-template-columns: repeat(2,1fr);\r\n  }\r\n\r\n  .smmlsg-result-grid {\r\n    grid-template-columns: repeat(2,1fr);\r\n  }\r\n\r\n}\r\n\r\n@media(max-width:600px) {\r\n\r\n  .smmlsg-tool {\r\n    margin: 15px 5px;\r\n    border-radius: 13px;\r\n  }\r\n\r\n  .smmlsg-header {\r\n    padding: 23px 16px;\r\n  }\r\n\r\n  .smmlsg-header h2 {\r\n    font-size: 23px;\r\n  }\r\n\r\n  .smmlsg-body {\r\n    padding: 17px;\r\n  }\r\n\r\n  .smmlsg-grid {\r\n    grid-template-columns: 1fr;\r\n  }\r\n\r\n  .smmlsg-result-grid {\r\n    grid-template-columns: repeat(2,1fr);\r\n  }\r\n\r\n  .smmlsg-zone-grid {\r\n    grid-template-columns: 1fr;\r\n  }\r\n\r\n}\r\n\r\n@media(max-width:400px) {\r\n\r\n  .smmlsg-result-grid {\r\n    grid-template-columns: 1fr;\r\n  }\r\n\r\n  .smmlsg-header h2 {\r\n    font-size: 21px;\r\n  }\r\n\r\n}\r\n\r\n<\/style>\r\n\r\n\r\n<script>\r\n\r\n(function() {\r\n\r\n  function initSMMLSG() {\r\n\r\n    var tools =\r\n      document.querySelectorAll('.smmlsg-tool');\r\n\r\n\r\n    tools.forEach(function(tool) {\r\n\r\n      if (\r\n        tool.dataset.smmlsgLoaded === '1'\r\n      ) {\r\n        return;\r\n      }\r\n\r\n      tool.dataset.smmlsgLoaded = '1';\r\n\r\n\r\n      var spotInput =\r\n        tool.querySelector('.smmlsg-spot');\r\n\r\n      var lotInput =\r\n        tool.querySelector('.smmlsg-lot');\r\n\r\n      var legsContainer =\r\n        tool.querySelector('.smmlsg-legs');\r\n\r\n      var addButton =\r\n        tool.querySelector('.smmlsg-add');\r\n\r\n      var calculateButton =\r\n        tool.querySelector('.smmlsg-calculate');\r\n\r\n      var error =\r\n        tool.querySelector('.smmlsg-error');\r\n\r\n      var results =\r\n        tool.querySelector('.smmlsg-results');\r\n\r\n\r\n      var legNumber =\r\n        0;\r\n\r\n\r\n      function money(value) {\r\n\r\n        if (\r\n          !isFinite(value)\r\n        ) {\r\n          return '\u20b90';\r\n        }\r\n\r\n        return '\u20b9' +\r\n          Number(value).toLocaleString(\r\n            'en-IN',\r\n            {\r\n              maximumFractionDigits: 2\r\n            }\r\n          );\r\n\r\n      }\r\n\r\n\r\n      function number(value) {\r\n\r\n        if (\r\n          !isFinite(value)\r\n        ) {\r\n          return '0';\r\n        }\r\n\r\n        return Number(value).toLocaleString(\r\n          'en-IN',\r\n          {\r\n            maximumFractionDigits: 2\r\n          }\r\n        );\r\n\r\n      }\r\n\r\n\r\n      function addLeg(\r\n        action,\r\n        type,\r\n        strike,\r\n        premium,\r\n        quantity\r\n      ) {\r\n\r\n        var rows =\r\n          legsContainer.querySelectorAll(\r\n            '.smmlsg-leg-row'\r\n          );\r\n\r\n\r\n        if (\r\n          rows.length >= 6\r\n        ) {\r\n\r\n          showError(\r\n            'You can add a maximum of 6 strategy legs.'\r\n          );\r\n\r\n          return;\r\n\r\n        }\r\n\r\n\r\n        legNumber++;\r\n\r\n\r\n        var row =\r\n          document.createElement(\r\n            'div'\r\n          );\r\n\r\n\r\n        row.className =\r\n          'smmlsg-leg-row';\r\n\r\n\r\n        row.innerHTML =\r\n\r\n          '<div class=\"smmlsg-leg-number\">' +\r\n            legNumber +\r\n          '<\/div>' +\r\n\r\n          '<select class=\"smmlsg-action\">' +\r\n\r\n            '<option value=\"buy\"' +\r\n              (\r\n                action === 'buy'\r\n                ? ' selected'\r\n                : ''\r\n              ) +\r\n            '>Buy<\/option>' +\r\n\r\n            '<option value=\"sell\"' +\r\n              (\r\n                action === 'sell'\r\n                ? ' selected'\r\n                : ''\r\n              ) +\r\n            '>Sell<\/option>' +\r\n\r\n          '<\/select>' +\r\n\r\n          '<select class=\"smmlsg-type\">' +\r\n\r\n            '<option value=\"call\"' +\r\n              (\r\n                type === 'call'\r\n                ? ' selected'\r\n                : ''\r\n              ) +\r\n            '>Call<\/option>' +\r\n\r\n            '<option value=\"put\"' +\r\n              (\r\n                type === 'put'\r\n                ? ' selected'\r\n                : ''\r\n              ) +\r\n            '>Put<\/option>' +\r\n\r\n            '<option value=\"future\"' +\r\n              (\r\n                type === 'future'\r\n                ? ' selected'\r\n                : ''\r\n              ) +\r\n            '>Future<\/option>' +\r\n\r\n          '<\/select>' +\r\n\r\n          '<input type=\"number\" class=\"smmlsg-strike\" ' +\r\n            'value=\"' +\r\n            strike +\r\n            '\" min=\"0.01\" step=\"0.01\">' +\r\n\r\n          '<input type=\"number\" class=\"smmlsg-premium\" ' +\r\n            'value=\"' +\r\n            premium +\r\n            '\" min=\"0\" step=\"0.01\">' +\r\n\r\n          '<input type=\"number\" class=\"smmlsg-quantity\" ' +\r\n            'value=\"' +\r\n            quantity +\r\n            '\" min=\"1\" step=\"1\">' +\r\n\r\n          '<button type=\"button\" class=\"smmlsg-remove\">\u00d7<\/button>';\r\n\r\n\r\n        legsContainer.appendChild(\r\n          row\r\n        );\r\n\r\n\r\n        updateNumbers();\r\n\r\n      }\r\n\r\n\r\n      function updateNumbers() {\r\n\r\n        var rows =\r\n          legsContainer.querySelectorAll(\r\n            '.smmlsg-leg-row'\r\n          );\r\n\r\n\r\n        rows.forEach(\r\n          function(row,index) {\r\n\r\n            row.querySelector(\r\n              '.smmlsg-leg-number'\r\n            ).textContent =\r\n              index + 1;\r\n\r\n          }\r\n        );\r\n\r\n      }\r\n\r\n\r\n      function clearLegs() {\r\n\r\n        legsContainer.innerHTML =\r\n          '';\r\n\r\n        legNumber =\r\n          0;\r\n\r\n      }\r\n\r\n\r\n      function showError(message) {\r\n\r\n        error.textContent =\r\n          message;\r\n\r\n        error.style.display =\r\n          'block';\r\n\r\n        results.style.display =\r\n          'none';\r\n\r\n      }\r\n\r\n\r\n      function clearError() {\r\n\r\n        error.style.display =\r\n          'none';\r\n\r\n      }\r\n\r\n\r\n      \/*\r\n       * Default two-leg strategy\r\n       *\/\r\n\r\n      addLeg(\r\n        'buy',\r\n        'call',\r\n        25000,\r\n        300,\r\n        75\r\n      );\r\n\r\n      addLeg(\r\n        'sell',\r\n        'call',\r\n        25500,\r\n        150,\r\n        75\r\n      );\r\n\r\n\r\n      \/*\r\n       * Add Leg\r\n       *\/\r\n\r\n      addButton.addEventListener(\r\n        'click',\r\n        function() {\r\n\r\n          addLeg(\r\n            'buy',\r\n            'call',\r\n            parseFloat(\r\n              spotInput.value\r\n            ) || 25000,\r\n            100,\r\n            parseFloat(\r\n              lotInput.value\r\n            ) || 75\r\n          );\r\n\r\n        }\r\n      );\r\n\r\n\r\n      \/*\r\n       * Remove Leg\r\n       *\/\r\n\r\n      legsContainer.addEventListener(\r\n        'click',\r\n        function(event) {\r\n\r\n          if (\r\n            event.target.classList.contains(\r\n              'smmlsg-remove'\r\n            )\r\n          ) {\r\n\r\n            var rows =\r\n              legsContainer.querySelectorAll(\r\n                '.smmlsg-leg-row'\r\n              );\r\n\r\n\r\n            if (\r\n              rows.length <= 1\r\n            ) {\r\n\r\n              showError(\r\n                'At least one leg is required.'\r\n              );\r\n\r\n              return;\r\n\r\n            }\r\n\r\n\r\n            event.target\r\n              .closest(\r\n                '.smmlsg-leg-row'\r\n              )\r\n              .remove();\r\n\r\n\r\n            updateNumbers();\r\n\r\n          }\r\n\r\n        }\r\n      );\r\n\r\n\r\n      \/*\r\n       * Presets\r\n       *\/\r\n\r\n      tool.querySelectorAll(\r\n        '.smmlsg-presets button'\r\n      ).forEach(\r\n        function(button) {\r\n\r\n          button.addEventListener(\r\n            'click',\r\n            function() {\r\n\r\n              var preset =\r\n                button.dataset.preset;\r\n\r\n\r\n              var spot =\r\n                parseFloat(\r\n                  spotInput.value\r\n                ) || 25000;\r\n\r\n\r\n              var lot =\r\n                parseFloat(\r\n                  lotInput.value\r\n                ) || 75;\r\n\r\n\r\n              var step =\r\n                500;\r\n\r\n\r\n              clearLegs();\r\n\r\n\r\n              if (\r\n                preset === 'clear'\r\n              ) {\r\n\r\n                addLeg(\r\n                  'buy',\r\n                  'call',\r\n                  spot,\r\n                  100,\r\n                  lot\r\n                );\r\n\r\n                return;\r\n\r\n              }\r\n\r\n\r\n              if (\r\n                preset === 'bull-call'\r\n              ) {\r\n\r\n                addLeg(\r\n                  'buy',\r\n                  'call',\r\n                  spot,\r\n                  300,\r\n                  lot\r\n                );\r\n\r\n                addLeg(\r\n                  'sell',\r\n                  'call',\r\n                  spot + step,\r\n                  150,\r\n                  lot\r\n                );\r\n\r\n              }\r\n\r\n\r\n              if (\r\n                preset === 'bear-put'\r\n              ) {\r\n\r\n                addLeg(\r\n                  'buy',\r\n                  'put',\r\n                  spot,\r\n                  300,\r\n                  lot\r\n                );\r\n\r\n                addLeg(\r\n                  'sell',\r\n                  'put',\r\n                  spot - step,\r\n                  150,\r\n                  lot\r\n                );\r\n\r\n              }\r\n\r\n\r\n              if (\r\n                preset === 'bull-put'\r\n              ) {\r\n\r\n                addLeg(\r\n                  'sell',\r\n                  'put',\r\n                  spot - step,\r\n                  180,\r\n                  lot\r\n                );\r\n\r\n                addLeg(\r\n                  'buy',\r\n                  'put',\r\n                  spot - (\r\n                    step * 2\r\n                  ),\r\n                  100,\r\n                  lot\r\n                );\r\n\r\n              }\r\n\r\n\r\n              if (\r\n                preset === 'bear-call'\r\n              ) {\r\n\r\n                addLeg(\r\n                  'sell',\r\n                  'call',\r\n                  spot + step,\r\n                  180,\r\n                  lot\r\n                );\r\n\r\n                addLeg(\r\n                  'buy',\r\n                  'call',\r\n                  spot + (\r\n                    step * 2\r\n                  ),\r\n                  100,\r\n                  lot\r\n                );\r\n\r\n              }\r\n\r\n\r\n              if (\r\n                preset === 'straddle'\r\n              ) {\r\n\r\n                addLeg(\r\n                  'buy',\r\n                  'call',\r\n                  spot,\r\n                  300,\r\n                  lot\r\n                );\r\n\r\n                addLeg(\r\n                  'buy',\r\n                  'put',\r\n                  spot,\r\n                  300,\r\n                  lot\r\n                );\r\n\r\n              }\r\n\r\n\r\n              if (\r\n                preset === 'strangle'\r\n              ) {\r\n\r\n                addLeg(\r\n                  'buy',\r\n                  'call',\r\n                  spot + step,\r\n                  180,\r\n                  lot\r\n                );\r\n\r\n                addLeg(\r\n                  'buy',\r\n                  'put',\r\n                  spot - step,\r\n                  180,\r\n                  lot\r\n                );\r\n\r\n              }\r\n\r\n\r\n              if (\r\n                preset === 'iron-condor'\r\n              ) {\r\n\r\n                addLeg(\r\n                  'buy',\r\n                  'put',\r\n                  spot - (\r\n                    step * 2\r\n                  ),\r\n                  70,\r\n                  lot\r\n                );\r\n\r\n                addLeg(\r\n                  'sell',\r\n                  'put',\r\n                  spot - step,\r\n                  150,\r\n                  lot\r\n                );\r\n\r\n                addLeg(\r\n                  'sell',\r\n                  'call',\r\n                  spot + step,\r\n                  150,\r\n                  lot\r\n                );\r\n\r\n                addLeg(\r\n                  'buy',\r\n                  'call',\r\n                  spot + (\r\n                    step * 2\r\n                  ),\r\n                  70,\r\n                  lot\r\n                );\r\n\r\n              }\r\n\r\n\r\n              clearError();\r\n\r\n            }\r\n          );\r\n\r\n        }\r\n      );\r\n\r\n\r\n      \/*\r\n       * Calculate\r\n       *\/\r\n\r\n      calculateButton.addEventListener(\r\n        'click',\r\n        function() {\r\n\r\n          clearError();\r\n\r\n\r\n          var spot =\r\n            parseFloat(\r\n              spotInput.value\r\n            );\r\n\r\n\r\n          var lot =\r\n            parseFloat(\r\n              lotInput.value\r\n            );\r\n\r\n\r\n          var rows =\r\n            legsContainer.querySelectorAll(\r\n              '.smmlsg-leg-row'\r\n            );\r\n\r\n\r\n          if (\r\n            !isFinite(spot) ||\r\n            spot <= 0\r\n          ) {\r\n\r\n            showError(\r\n              'Please enter a valid underlying price.'\r\n            );\r\n\r\n            return;\r\n\r\n          }\r\n\r\n\r\n          if (\r\n            !isFinite(lot) ||\r\n            lot <= 0\r\n          ) {\r\n\r\n            showError(\r\n              'Please enter a valid lot size.'\r\n            );\r\n\r\n            return;\r\n\r\n          }\r\n\r\n\r\n          if (\r\n            rows.length === 0\r\n          ) {\r\n\r\n            showError(\r\n              'Please add at least one strategy leg.'\r\n            );\r\n\r\n            return;\r\n\r\n          }\r\n\r\n\r\n          var legs = [];\r\n\r\n\r\n          for (\r\n            var i = 0;\r\n            i < rows.length;\r\n            i++\r\n          ) {\r\n\r\n            var row =\r\n              rows[i];\r\n\r\n\r\n            var action =\r\n              row.querySelector(\r\n                '.smmlsg-action'\r\n              ).value;\r\n\r\n\r\n            var type =\r\n              row.querySelector(\r\n                '.smmlsg-type'\r\n              ).value;\r\n\r\n\r\n            var strike =\r\n              parseFloat(\r\n                row.querySelector(\r\n                  '.smmlsg-strike'\r\n                ).value\r\n              );\r\n\r\n\r\n            var premium =\r\n              parseFloat(\r\n                row.querySelector(\r\n                  '.smmlsg-premium'\r\n                ).value\r\n              );\r\n\r\n\r\n            var quantity =\r\n              parseFloat(\r\n                row.querySelector(\r\n                  '.smmlsg-quantity'\r\n                ).value\r\n              );\r\n\r\n\r\n            if (\r\n\r\n              !isFinite(strike) ||\r\n              strike <= 0 ||\r\n              !isFinite(premium) ||\r\n              premium < 0 ||\r\n              !isFinite(quantity) ||\r\n              quantity <= 0\r\n\r\n            ) {\r\n\r\n              showError(\r\n                'Please check the strike, premium and quantity for every leg.'\r\n              );\r\n\r\n              return;\r\n\r\n            }\r\n\r\n\r\n            legs.push({\r\n\r\n              action: action,\r\n\r\n              type: type,\r\n\r\n              strike: strike,\r\n\r\n              premium: premium,\r\n\r\n              quantity: quantity\r\n\r\n            });\r\n\r\n          }\r\n\r\n\r\n          \/*\r\n           * Net premium\r\n           *\r\n           * Positive = net debit\r\n           * Negative = net credit\r\n           *\/\r\n\r\n          var netPremiumPerUnit =\r\n            0;\r\n\r\n\r\n          legs.forEach(\r\n            function(leg) {\r\n\r\n              if (\r\n                leg.action === 'buy'\r\n              ) {\r\n\r\n                netPremiumPerUnit +=\r\n                  leg.premium;\r\n\r\n              } else {\r\n\r\n                netPremiumPerUnit -=\r\n                  leg.premium;\r\n\r\n              }\r\n\r\n            }\r\n          );\r\n\r\n\r\n          \/*\r\n           * For simplicity, the total\r\n           * premium uses each leg's\r\n           * quantity.\r\n           *\/\r\n\r\n          var totalPremium =\r\n            0;\r\n\r\n\r\n          legs.forEach(\r\n            function(leg) {\r\n\r\n              if (\r\n                leg.action === 'buy'\r\n              ) {\r\n\r\n                totalPremium +=\r\n                  leg.premium *\r\n                  leg.quantity;\r\n\r\n              } else {\r\n\r\n                totalPremium -=\r\n                  leg.premium *\r\n                  leg.quantity;\r\n\r\n              }\r\n\r\n            }\r\n          );\r\n\r\n\r\n          \/*\r\n           * Price analysis range\r\n           *\/\r\n\r\n          var analysisRange =\r\n            parseFloat(\r\n              tool.querySelector(\r\n                '.smmlsg-range'\r\n              ).value\r\n            );\r\n\r\n\r\n          var priceStep =\r\n            parseFloat(\r\n              tool.querySelector(\r\n                '.smmlsg-steps'\r\n              ).value\r\n            );\r\n\r\n\r\n          var startPrice =\r\n            Math.max(\r\n              0,\r\n              spot -\r\n              analysisRange\r\n            );\r\n\r\n\r\n          var endPrice =\r\n            spot +\r\n            analysisRange;\r\n\r\n\r\n          \/*\r\n           * Build price points\r\n           *\/\r\n\r\n          var prices = [];\r\n\r\n\r\n          for (\r\n            var price = startPrice;\r\n            price <= endPrice + 0.001;\r\n            price += priceStep\r\n          ) {\r\n\r\n            prices.push(\r\n              Number(\r\n                price.toFixed(2)\r\n              )\r\n            );\r\n\r\n          }\r\n\r\n\r\n          \/*\r\n           * Add all important strikes\r\n           *\/\r\n\r\n          legs.forEach(\r\n            function(leg) {\r\n\r\n              if (\r\n                prices.indexOf(\r\n                  leg.strike\r\n                ) === -1 &&\r\n                leg.strike >= startPrice &&\r\n                leg.strike <= endPrice\r\n              ) {\r\n\r\n                prices.push(\r\n                  leg.strike\r\n                );\r\n\r\n              }\r\n\r\n            }\r\n          );\r\n\r\n\r\n          prices.sort(\r\n            function(a,b) {\r\n              return a - b;\r\n            }\r\n          );\r\n\r\n\r\n          \/*\r\n           * Payoff function\r\n           *\/\r\n\r\n          function payoffAt(\r\n            underlying\r\n          ) {\r\n\r\n            var total =\r\n              0;\r\n\r\n\r\n            legs.forEach(\r\n              function(leg) {\r\n\r\n                var intrinsic =\r\n                  0;\r\n\r\n\r\n                if (\r\n                  leg.type === 'call'\r\n                ) {\r\n\r\n                  intrinsic =\r\n                    Math.max(\r\n                      0,\r\n                      underlying -\r\n                      leg.strike\r\n                    );\r\n\r\n                }\r\n\r\n\r\n                if (\r\n                  leg.type === 'put'\r\n                ) {\r\n\r\n                  intrinsic =\r\n                    Math.max(\r\n                      0,\r\n                      leg.strike -\r\n                      underlying\r\n                    );\r\n\r\n                }\r\n\r\n\r\n                if (\r\n                  leg.type === 'future'\r\n                ) {\r\n\r\n                  intrinsic =\r\n                    underlying -\r\n                    leg.strike;\r\n\r\n                }\r\n\r\n\r\n                var legPL;\r\n\r\n\r\n                if (\r\n                  leg.type === 'future'\r\n                ) {\r\n\r\n                  legPL =\r\n                    (\r\n                      leg.action === 'buy'\r\n                      ? intrinsic\r\n                      : -intrinsic\r\n                    );\r\n\r\n                } else {\r\n\r\n                  var premiumImpact =\r\n                    (\r\n                      leg.action === 'buy'\r\n                      ? -leg.premium\r\n                      : leg.premium\r\n                    );\r\n\r\n\r\n                  var intrinsicImpact =\r\n                    (\r\n                      leg.action === 'buy'\r\n                      ? intrinsic\r\n                      : -intrinsic\r\n                    );\r\n\r\n\r\n                  legPL =\r\n                    intrinsicImpact +\r\n                    premiumImpact;\r\n\r\n                }\r\n\r\n\r\n                total +=\r\n                  legPL *\r\n                  leg.quantity;\r\n\r\n              }\r\n            );\r\n\r\n\r\n            return total;\r\n\r\n          }\r\n\r\n\r\n          \/*\r\n           * Analyse payoff\r\n           *\/\r\n\r\n          var payoffData = [];\r\n\r\n\r\n          prices.forEach(\r\n            function(price) {\r\n\r\n              payoffData.push({\r\n\r\n                price: price,\r\n\r\n                pnl:\r\n                  payoffAt(price)\r\n\r\n              });\r\n\r\n            }\r\n          );\r\n\r\n\r\n          \/*\r\n           * More detailed price range\r\n           * for max profit\/loss.\r\n           *\/\r\n\r\n          var minStrike =\r\n            Math.min.apply(\r\n              null,\r\n              legs.map(\r\n                function(leg) {\r\n                  return leg.strike;\r\n                }\r\n              )\r\n            );\r\n\r\n\r\n          var maxStrike =\r\n            Math.max.apply(\r\n              null,\r\n              legs.map(\r\n                function(leg) {\r\n                  return leg.strike;\r\n                }\r\n              )\r\n            );\r\n\r\n\r\n          var extremeLow =\r\n            Math.max(\r\n              0,\r\n              Math.min(\r\n                startPrice,\r\n                minStrike -\r\n                (\r\n                  analysisRange\r\n                )\r\n              )\r\n            );\r\n\r\n\r\n          var extremeHigh =\r\n            Math.max(\r\n              endPrice,\r\n              maxStrike +\r\n              analysisRange\r\n            );\r\n\r\n\r\n          \/*\r\n           * Generate a fine analysis\r\n           * grid to estimate max values.\r\n           *\/\r\n\r\n          var finePoints = [];\r\n\r\n\r\n          var fineStep =\r\n            Math.max(\r\n              1,\r\n              priceStep \/ 10\r\n            );\r\n\r\n\r\n          for (\r\n            var fp = extremeLow;\r\n            fp <= extremeHigh + 0.01;\r\n            fp += fineStep\r\n          ) {\r\n\r\n            finePoints.push(\r\n              payoffAt(fp)\r\n            );\r\n\r\n          }\r\n\r\n\r\n          var maxProfit =\r\n            Math.max.apply(\r\n              null,\r\n              finePoints\r\n            );\r\n\r\n\r\n          var maxLoss =\r\n            Math.min.apply(\r\n              null,\r\n              finePoints\r\n            );\r\n\r\n\r\n          \/*\r\n           * Breakeven detection\r\n           *\/\r\n\r\n          var breakevens = [];\r\n\r\n\r\n          for (\r\n            var b = 0;\r\n            b < payoffData.length - 1;\r\n            b++\r\n          ) {\r\n\r\n            var p1 =\r\n              payoffData[b];\r\n\r\n            var p2 =\r\n              payoffData[b + 1];\r\n\r\n\r\n            if (\r\n              p1.pnl === 0\r\n            ) {\r\n\r\n              breakevens.push(\r\n                p1.price\r\n              );\r\n\r\n            } else if (\r\n              (\r\n                p1.pnl < 0 &&\r\n                p2.pnl > 0\r\n              ) ||\r\n              (\r\n                p1.pnl > 0 &&\r\n                p2.pnl < 0\r\n              )\r\n            ) {\r\n\r\n              var be =\r\n                p1.price +\r\n                (\r\n                  (\r\n                    0 -\r\n                    p1.pnl\r\n                  ) \/\r\n                  (\r\n                    p2.pnl -\r\n                    p1.pnl\r\n                  )\r\n                ) *\r\n                (\r\n                  p2.price -\r\n                  p1.price\r\n                );\r\n\r\n\r\n              breakevens.push(\r\n                be\r\n              );\r\n\r\n            }\r\n\r\n          }\r\n\r\n\r\n          \/*\r\n           * Remove duplicate\r\n           * breakevens.\r\n           *\/\r\n\r\n          breakevens =\r\n            breakevens.filter(\r\n              function(value,index,self) {\r\n\r\n                return self.indexOf(\r\n                  value\r\n                ) === index;\r\n\r\n              }\r\n            );\r\n\r\n\r\n          \/*\r\n           * Strategy name\r\n           *\/\r\n\r\n          var strategyName =\r\n            detectStrategy(\r\n              legs\r\n            );\r\n\r\n\r\n          \/*\r\n           * Results\r\n           *\/\r\n\r\n          tool.querySelector(\r\n            '.smmlsg-strategy-name'\r\n          ).textContent =\r\n            strategyName;\r\n\r\n\r\n          tool.querySelector(\r\n            '.smmlsg-net-premium'\r\n          ).textContent =\r\n            money(\r\n              Math.abs(\r\n                totalPremium\r\n              )\r\n            );\r\n\r\n\r\n          tool.querySelector(\r\n            '.smmlsg-max-profit'\r\n          ).textContent =\r\n            maxProfit >= 999999999\r\n            ? 'Unlimited'\r\n            : money(\r\n                maxProfit\r\n              );\r\n\r\n\r\n          tool.querySelector(\r\n            '.smmlsg-max-loss'\r\n          ).textContent =\r\n            maxLoss <= -999999999\r\n            ? 'Unlimited'\r\n            : money(\r\n                Math.abs(\r\n                  maxLoss\r\n                )\r\n              );\r\n\r\n\r\n          tool.querySelector(\r\n            '.smmlsg-debit-credit'\r\n          ).textContent =\r\n            totalPremium > 0\r\n            ? 'Net Debit'\r\n            : totalPremium < 0\r\n              ? 'Net Credit'\r\n              : 'Balanced';\r\n\r\n\r\n          tool.querySelector(\r\n            '.smmlsg-leg-count'\r\n          ).textContent =\r\n            legs.length;\r\n\r\n\r\n          \/*\r\n           * Breakevens\r\n           *\/\r\n\r\n          var lowerBE =\r\n            breakevens.length\r\n            ? Math.min.apply(\r\n                null,\r\n                breakevens\r\n              )\r\n            : null;\r\n\r\n\r\n          var upperBE =\r\n            breakevens.length > 1\r\n            ? Math.max.apply(\r\n                null,\r\n                breakevens\r\n              )\r\n            : (\r\n                breakevens.length === 1\r\n                ? breakevens[0]\r\n                : null\r\n              );\r\n\r\n\r\n          tool.querySelector(\r\n            '.smmlsg-lower-be'\r\n          ).textContent =\r\n            lowerBE !== null\r\n            ? money(lowerBE)\r\n            : '\u2014';\r\n\r\n\r\n          tool.querySelector(\r\n            '.smmlsg-upper-be'\r\n          ).textContent =\r\n            upperBE !== null\r\n            ? money(upperBE)\r\n            : '\u2014';\r\n\r\n\r\n          \/*\r\n           * Overview\r\n           *\/\r\n\r\n          var overview =\r\n            'This ' +\r\n            strategyName +\r\n            ' contains ' +\r\n            legs.length +\r\n            ' leg' +\r\n            (\r\n              legs.length === 1\r\n              ? ''\r\n              : 's'\r\n            ) +\r\n            '. ';\r\n\r\n\r\n          overview +=\r\n            totalPremium > 0\r\n            ? 'The strategy requires an estimated net premium debit of ' +\r\n              money(totalPremium) +\r\n              '. '\r\n            : totalPremium < 0\r\n              ? 'The strategy receives an estimated net premium credit of ' +\r\n                money(\r\n                  Math.abs(\r\n                    totalPremium\r\n                  )\r\n                ) +\r\n                '. '\r\n              : 'The combined premium is approximately balanced. ';\r\n\r\n\r\n          if (\r\n            breakevens.length\r\n          ) {\r\n\r\n            overview +=\r\n              'The estimated breakeven level' +\r\n              (\r\n                breakevens.length > 1\r\n                ? 's are '\r\n                : ' is '\r\n              ) +\r\n              breakevens\r\n                .map(\r\n                  function(be) {\r\n                    return money(be);\r\n                  }\r\n                )\r\n                .join(\r\n                  ' and '\r\n                ) +\r\n              '.';\r\n\r\n          } else {\r\n\r\n            overview +=\r\n              'No breakeven was detected within the selected analysis range.';\r\n\r\n          }\r\n\r\n\r\n          tool.querySelector(\r\n            '.smmlsg-overview'\r\n          ).textContent =\r\n            overview;\r\n\r\n\r\n          \/*\r\n           * Payoff table\r\n           *\/\r\n\r\n          var payoffBody =\r\n            tool.querySelector(\r\n              '.smmlsg-payoff-body'\r\n            );\r\n\r\n\r\n          payoffBody.innerHTML =\r\n            '';\r\n\r\n\r\n          payoffData.forEach(\r\n            function(item) {\r\n\r\n              var tr =\r\n                document.createElement(\r\n                  'tr'\r\n                );\r\n\r\n\r\n              var status =\r\n                item.pnl > 0\r\n                ? 'Profit'\r\n                : item.pnl < 0\r\n                  ? 'Loss'\r\n                  : 'Breakeven';\r\n\r\n\r\n              var statusClass =\r\n                item.pnl > 0\r\n                ? 'smmlsg-profit'\r\n                : item.pnl < 0\r\n                  ? 'smmlsg-loss'\r\n                  : '';\r\n\r\n\r\n              tr.innerHTML =\r\n\r\n                '<td>' +\r\n                  money(item.price) +\r\n                '<\/td>' +\r\n\r\n                '<td class=\"' +\r\n                  statusClass +\r\n                '\">' +\r\n                  money(\r\n                    item.pnl\r\n                  ) +\r\n                '<\/td>' +\r\n\r\n                '<td class=\"' +\r\n                  statusClass +\r\n                '\">' +\r\n                  money(\r\n                    item.pnl\r\n                  ) +\r\n                '<\/td>' +\r\n\r\n                '<td class=\"' +\r\n                  statusClass +\r\n                '\">' +\r\n                  status +\r\n                '<\/td>';\r\n\r\n\r\n              payoffBody.appendChild(\r\n                tr\r\n              );\r\n\r\n            }\r\n          );\r\n\r\n\r\n          \/*\r\n           * Zone summary\r\n           *\/\r\n\r\n          tool.querySelector(\r\n            '.smmlsg-zone-profit'\r\n          ).textContent =\r\n            maxProfit >= 999999999\r\n            ? 'Unlimited'\r\n            : money(maxProfit);\r\n\r\n\r\n          tool.querySelector(\r\n            '.smmlsg-zone-loss'\r\n          ).textContent =\r\n            maxLoss <= -999999999\r\n            ? 'Unlimited'\r\n            : money(\r\n                Math.abs(\r\n                  maxLoss\r\n                )\r\n              );\r\n\r\n\r\n          var profitRange =\r\n            findProfitRange(\r\n              payoffData\r\n            );\r\n\r\n\r\n          tool.querySelector(\r\n            '.smmlsg-zone-range'\r\n          ).textContent =\r\n            profitRange;\r\n\r\n\r\n          \/*\r\n           * Leg summary\r\n           *\/\r\n\r\n          var summaryBody =\r\n            tool.querySelector(\r\n              '.smmlsg-leg-summary'\r\n            );\r\n\r\n\r\n          summaryBody.innerHTML =\r\n            '';\r\n\r\n\r\n          legs.forEach(\r\n            function(leg,index) {\r\n\r\n              var tr =\r\n                document.createElement(\r\n                  'tr'\r\n                );\r\n\r\n\r\n              tr.innerHTML =\r\n\r\n                '<td>' +\r\n                  (index + 1) +\r\n                '<\/td>' +\r\n\r\n                '<td>' +\r\n                  (\r\n                    leg.action === 'buy'\r\n                    ? 'Buy'\r\n                    : 'Sell'\r\n                  ) +\r\n                '<\/td>' +\r\n\r\n                '<td>' +\r\n                  capitalize(\r\n                    leg.type\r\n                  ) +\r\n                '<\/td>' +\r\n\r\n                '<td>' +\r\n                  money(\r\n                    leg.strike\r\n                  ) +\r\n                '<\/td>' +\r\n\r\n                '<td>' +\r\n                  money(\r\n                    leg.premium\r\n                  ) +\r\n                '<\/td>' +\r\n\r\n                '<td>' +\r\n                  number(\r\n                    leg.quantity\r\n                  ) +\r\n                '<\/td>';\r\n\r\n\r\n              summaryBody.appendChild(\r\n                tr\r\n              );\r\n\r\n            }\r\n          );\r\n\r\n\r\n          \/*\r\n           * Interpretation\r\n           *\/\r\n\r\n          var interpretation =\r\n            'The generated ' +\r\n            strategyName +\r\n            ' should be evaluated primarily at expiry because this tool calculates intrinsic payoff at expiry. ';\r\n\r\n\r\n          if (\r\n            maxProfit > 0 &&\r\n            maxLoss < 0\r\n          ) {\r\n\r\n            interpretation +=\r\n              'Within the analysed range, the estimated maximum profit is ' +\r\n              money(maxProfit) +\r\n              ' and the estimated maximum loss is ' +\r\n              money(\r\n                Math.abs(maxLoss)\r\n              ) +\r\n              '. ';\r\n\r\n          } else if (\r\n            maxProfit > 0\r\n          ) {\r\n\r\n            interpretation +=\r\n              'The analysed strategy shows potential profit, while the loss profile should be reviewed across a wider price range before trading. ';\r\n\r\n          }\r\n\r\n\r\n          if (\r\n            breakevens.length\r\n          ) {\r\n\r\n            interpretation +=\r\n              'The calculated breakeven level' +\r\n              (\r\n                breakevens.length > 1\r\n                ? 's are '\r\n                : ' is '\r\n              ) +\r\n              breakevens\r\n                .map(\r\n                  function(be) {\r\n                    return money(be);\r\n                  }\r\n                )\r\n                .join(\r\n                  ' and '\r\n                ) +\r\n              '.';\r\n\r\n          }\r\n\r\n\r\n          tool.querySelector(\r\n            '.smmlsg-interpretation-text'\r\n          ).textContent =\r\n            interpretation;\r\n\r\n\r\n          results.style.display =\r\n            'block';\r\n\r\n\r\n          if (\r\n            window.innerWidth < 600\r\n          ) {\r\n\r\n            setTimeout(\r\n              function() {\r\n\r\n                results.scrollIntoView({\r\n                  behavior: 'smooth',\r\n                  block: 'start'\r\n                });\r\n\r\n              },\r\n              100\r\n            );\r\n\r\n          }\r\n\r\n        }\r\n      );\r\n\r\n\r\n      \/*\r\n       * Strategy detection\r\n       *\/\r\n\r\n      function detectStrategy(\r\n        legs\r\n      ) {\r\n\r\n        if (\r\n          legs.length === 2\r\n        ) {\r\n\r\n          var a =\r\n            legs[0];\r\n\r\n          var b =\r\n            legs[1];\r\n\r\n\r\n          if (\r\n            a.type === 'call' &&\r\n            b.type === 'call' &&\r\n            a.action !== b.action\r\n          ) {\r\n\r\n            if (\r\n              a.action === 'buy' &&\r\n              a.strike < b.strike\r\n            ) {\r\n\r\n              return 'Bull Call Spread';\r\n\r\n            }\r\n\r\n            if (\r\n              b.action === 'buy' &&\r\n              b.strike < a.strike\r\n            ) {\r\n\r\n              return 'Bull Call Spread';\r\n\r\n            }\r\n\r\n            return 'Bear Call Spread';\r\n\r\n          }\r\n\r\n\r\n          if (\r\n            a.type === 'put' &&\r\n            b.type === 'put' &&\r\n            a.action !== b.action\r\n          ) {\r\n\r\n            if (\r\n              a.action === 'buy' &&\r\n              a.strike > b.strike\r\n            ) {\r\n\r\n              return 'Bear Put Spread';\r\n\r\n            }\r\n\r\n            if (\r\n              b.action === 'buy' &&\r\n              b.strike > a.strike\r\n            ) {\r\n\r\n              return 'Bear Put Spread';\r\n\r\n            }\r\n\r\n            return 'Bull Put Spread';\r\n\r\n          }\r\n\r\n\r\n          if (\r\n            a.type === 'call' &&\r\n            b.type === 'put' &&\r\n            a.action === 'buy' &&\r\n            b.action === 'buy' &&\r\n            a.strike === b.strike\r\n          ) {\r\n\r\n            return 'Long Straddle';\r\n\r\n          }\r\n\r\n\r\n          if (\r\n            a.type === 'call' &&\r\n            b.type === 'put' &&\r\n            a.action === 'buy' &&\r\n            b.action === 'buy'\r\n          ) {\r\n\r\n            return 'Long Strangle';\r\n\r\n          }\r\n\r\n        }\r\n\r\n\r\n        if (\r\n          legs.length === 4\r\n        ) {\r\n\r\n          var calls =\r\n            legs.filter(\r\n              function(leg) {\r\n                return leg.type === 'call';\r\n              }\r\n            );\r\n\r\n          var puts =\r\n            legs.filter(\r\n              function(leg) {\r\n                return leg.type === 'put';\r\n              }\r\n            );\r\n\r\n\r\n          if (\r\n            calls.length === 2 &&\r\n            puts.length === 2\r\n          ) {\r\n\r\n            return 'Multi-Leg Condor \/ Combination';\r\n\r\n          }\r\n\r\n        }\r\n\r\n\r\n        return 'Custom Multi-Leg Strategy';\r\n\r\n      }\r\n\r\n\r\n      function capitalize(\r\n        text\r\n      ) {\r\n\r\n        return text.charAt(0).toUpperCase() +\r\n          text.slice(1);\r\n\r\n      }\r\n\r\n\r\n      function findProfitRange(\r\n        data\r\n      ) {\r\n\r\n        var profitable =\r\n          data.filter(\r\n            function(item) {\r\n              return item.pnl > 0;\r\n            }\r\n          );\r\n\r\n\r\n        if (\r\n          profitable.length === 0\r\n        ) {\r\n\r\n          return 'No profit zone in selected range';\r\n\r\n        }\r\n\r\n\r\n        return money(\r\n          profitable[0].price\r\n        ) +\r\n        ' to ' +\r\n        money(\r\n          profitable[\r\n            profitable.length - 1\r\n          ].price\r\n        );\r\n\r\n      }\r\n\r\n    });\r\n\r\n  }\r\n\r\n\r\n  if (\r\n    document.readyState ===\r\n    'loading'\r\n  ) {\r\n\r\n    document.addEventListener(\r\n      'DOMContentLoaded',\r\n      initSMMLSG\r\n    );\r\n\r\n  } else {\r\n\r\n    initSMMLSG();\r\n\r\n  }\r\n\r\n})();\r\n\r\n<\/script>\n<p style=\"text-align: justify;\">The <strong>StockMaster Universe Multi-Leg F&amp;O Strategy Generator<\/strong> is a strategy-planning tool designed for traders who use combinations of futures and options rather than simple buy or sell positions.<\/p>\n<p style=\"text-align: justify;\">A multi-leg strategy combines two or more positions to create a specific risk and reward profile. Examples include <strong>Bull Call Spreads, Bear Put Spreads, Bull Put Spreads, Bear Call Spreads, Straddles, Strangles and Iron Condors<\/strong>.<\/p>\n<p style=\"text-align: justify;\">Instead of calculating every leg separately, this tool allows traders to enter multiple legs and examine the combined position.<\/p>\n<h3>What Is a Multi-Leg F&amp;O Strategy?<\/h3>\n<p>A multi-leg strategy consists of multiple futures or options positions that work together as a single trading idea.<\/p>\n<p>For example, a Bull Call Spread can involve:<\/p>\n<ul>\n<li>Buying one Call option at a lower strike<\/li>\n<li>Selling one Call option at a higher strike<\/li>\n<\/ul>\n<p>The premium received from the sold option reduces the cost of the purchased option, while the short Call limits the maximum profit.<\/p>\n<p>Similarly, an Iron Condor combines four option positions to create a defined-risk strategy that may benefit when the underlying remains within a selected range.<\/p>\n<h4>How to Use the Strategy Generator<\/h4>\n<p>Enter the underlying price and lot size first.<\/p>\n<p>You can then select one of the built-in strategy templates or manually create your own combination.<\/p>\n<p>For each leg, enter:<\/p>\n<ul>\n<li>Buy or Sell<\/li>\n<li>Call, Put or Future<\/li>\n<li>Strike price<\/li>\n<li>Option premium<\/li>\n<li>Quantity<\/li>\n<\/ul>\n<p>The tool supports up to six legs, allowing traders to build both simple spreads and more complex combinations.<\/p>\n<p><strong>Quick Strategy Templates<\/strong><\/p>\n<p>The generator includes templates for commonly used strategies:<\/p>\n<p><strong>Bull Call Spread<\/strong><br \/>\nA bullish strategy involving a bought Call and a higher-strike sold Call.<\/p>\n<p><strong>Bear Put Spread<\/strong><br \/>\nA bearish strategy involving a bought Put and a lower-strike sold Put.<\/p>\n<p><strong>Bull Put Spread<\/strong><br \/>\nA credit strategy generally designed for a moderately bullish or neutral outlook.<\/p>\n<p><strong>Bear Call Spread<\/strong><br \/>\nA credit strategy generally designed for a moderately bearish or neutral outlook.<\/p>\n<p><strong>Long Straddle<\/strong><br \/>\nBuying a Call and Put at the same strike to benefit from a sufficiently large move in either direction.<\/p>\n<p><strong>Long Strangle<\/strong><br \/>\nBuying an out-of-the-money Call and Put at different strikes.<\/p>\n<p><strong>Iron Condor<\/strong><br \/>\nA four-leg defined-risk strategy that generally seeks to benefit when the underlying remains within a particular range.<\/p>\n<h4>What Does the Calculator Show?<\/h4>\n<p>After generating a strategy, the tool estimates:<\/p>\n<ul>\n<li>Strategy type<\/li>\n<li>Net premium<\/li>\n<li>Net debit or credit<\/li>\n<li>Maximum profit<\/li>\n<li>Maximum loss<\/li>\n<li>Lower breakeven<\/li>\n<li>Upper breakeven<\/li>\n<li>Expiry payoff<\/li>\n<li>Profit range<\/li>\n<li>Loss range<\/li>\n<li>Individual leg details<\/li>\n<\/ul>\n<p>This helps traders understand the combined position instead of looking at each option independently.<\/p>\n<h5>Understanding Net Debit and Net Credit<\/h5>\n<p>A strategy has a <strong>net debit<\/strong> when the total premium paid for purchased options is greater than the premium received from sold options.<\/p>\n<p>A strategy has a <strong>net credit<\/strong> when the premium received from sold options exceeds the premium paid for purchased options.<\/p>\n<p>Understanding the initial debit or credit is important because it directly affects the strategy&#8217;s payoff at expiry.<\/p>\n<h5>Why Analyse the Combined Position?<\/h5>\n<p>A common mistake among newer options traders is to evaluate each option leg separately.<\/p>\n<p>For a multi-leg strategy, however, the combined payoff is what matters.<\/p>\n<p>A sold option may appear risky when viewed independently, but another purchased option can limit the overall loss. Similarly, buying an option and selling another option can reduce premium cost but also limit potential profit.<\/p>\n<p>The strategy generator brings these relationships together.<\/p>\n<p><strong>Expiry Payoff Analysis<\/strong><\/p>\n<p>The tool calculates estimated profit or loss at different underlying prices at expiry.<\/p>\n<p>This helps traders see how the strategy behaves when the underlying:<\/p>\n<ul>\n<li>Falls sharply<\/li>\n<li>Falls moderately<\/li>\n<li>Remains near the current price<\/li>\n<li>Rises moderately<\/li>\n<li>Rises sharply<\/li>\n<\/ul>\n<p>The payoff table can therefore be used to understand the structure of the strategy before entering a trade.<\/p>\n<p><strong>Important Limitation<\/strong><\/p>\n<p>The calculator primarily analyses <strong>expiry payoff based on intrinsic value and the entered premiums<\/strong>.<\/p>\n<p>It does not simulate the complete real-time option pricing process.<\/p>\n<p>Actual option prices before expiry can change because of:<\/p>\n<ul>\n<li>Time decay<\/li>\n<li>Implied volatility<\/li>\n<li>Interest rates<\/li>\n<li>Underlying price movement<\/li>\n<li>Liquidity<\/li>\n<li>Bid-ask spreads<\/li>\n<li>Greeks<\/li>\n<li>Market events<\/li>\n<\/ul>\n<p>Therefore, the maximum profit, maximum loss and breakeven estimates should be treated as educational planning outputs.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The StockMaster Universe Multi-Leg F&amp;O Strategy Generator is a strategy-planning tool designed for traders who use combinations of futures and [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"elementor_theme","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"default","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"set","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[62],"tags":[],"class_list":["post-576","post","type-post","status-publish","format-standard","hentry","category-fo-trading-tools"],"rttpg_featured_image_url":null,"rttpg_author":{"display_name":"StockMaster Universe","author_link":"https:\/\/www.stockmaster.in\/universe\/author\/unistockadmin\/"},"rttpg_comment":0,"rttpg_category":"<a href=\"https:\/\/www.stockmaster.in\/universe\/category\/tools\/fo-trading-tools\/\" rel=\"category tag\">F&amp;O Trading Tools<\/a>","rttpg_excerpt":"The StockMaster Universe Multi-Leg F&amp;O Strategy Generator is a strategy-planning tool designed for traders who use combinations of futures and [&hellip;]","_links":{"self":[{"href":"https:\/\/www.stockmaster.in\/universe\/wp-json\/wp\/v2\/posts\/576","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.stockmaster.in\/universe\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.stockmaster.in\/universe\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.stockmaster.in\/universe\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.stockmaster.in\/universe\/wp-json\/wp\/v2\/comments?post=576"}],"version-history":[{"count":0,"href":"https:\/\/www.stockmaster.in\/universe\/wp-json\/wp\/v2\/posts\/576\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.stockmaster.in\/universe\/wp-json\/wp\/v2\/media?parent=576"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.stockmaster.in\/universe\/wp-json\/wp\/v2\/categories?post=576"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.stockmaster.in\/universe\/wp-json\/wp\/v2\/tags?post=576"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}