Level 5 — MasteryBrokerage, Demat & Account Setup

Brokerage, Demat & Account Setup

75 minutes60 marksprintable — key stays hidden on paper

LEVEL 5 — Mastery Examination

Time Limit: 75 minutes Total Marks: 60 Instructions: Answer all questions. Show full working, derivations, and code. Use ...... for math. Round monetary values to 2 decimals unless stated.


Question 1 — Brokerage Cost Model & Break-Even Analysis (24 marks)

A trader uses a discount broker with the following intraday equity charge schedule (India, indicative):

  • Brokerage: min(0.03%×turnover per leg, ₹20)\min(0.03\% \times \text{turnover per leg},\ ₹20) per executed order (buy leg and sell leg charged separately)
  • STT: 0.025%0.025\% on the sell-side turnover only
  • Exchange transaction charge: 0.00297%0.00297\% on total turnover (buy + sell)
  • SEBI charge: 0.0001%0.0001\% on total turnover
  • Stamp duty: 0.003%0.003\% on the buy-side turnover only
  • GST: 18%18\% levied on (brokerage + exchange transaction charge)

(a) A trader buys 200 shares at 450₹450 and sells all 200 the same day at 458₹458. Compute the total charges and the net profit after all charges. Show each component. (10)

(b) Derive a general symbolic expression for the total charges C(p,n)C(p, n) for a round-trip intraday trade where all nn shares are bought and sold at the same price pp (i.e. turnover per leg =np= np, ignoring price movement). State clearly when the 20₹20 brokerage cap becomes binding as a function of npnp. (8)

(c) Using your model from (b), determine the break-even price move Δ\Delta (in ₹ per share) required for the trader in part (a)'s position size (n=200n=200, buy price p=450p=450) to exactly cover charges. Treat sell price =p+Δ= p + \Delta and solve. (6)


Question 2 — T+1 Settlement Timeline Simulation & DP Charge Logic (20 marks)

(a) A trader executes the following on a Demat/trading account. Assume T+1 settlement, Indian market holidays ignored except weekends (Sat/Sun non-settlement). For delivery sells, a DP charge of 13.5+GST(18%)₹13.5 + \text{GST}(18\%) per scrip per day is levied on the day shares are debited from demat (the settlement day). Buys incur no DP charge.

Trade Day executed Action Scrip Qty
A Thursday Sell (delivery) INFY 50
B Friday Sell (delivery) TCS 30
C Friday Buy (delivery) INFY 10

For each trade state the settlement (credit/debit) date and the total DP charge incurred. Give the grand total DP charge. (10)

(b) Write a Python function settlement_date(trade_day_index) where trade_day_index is 0=Mon … 6=Sun, that returns the settlement day index under T+1, skipping weekends. Then write dp_charge(is_delivery_sell, num_scrips) returning the total DP cost (₹13.5 + 18% GST per scrip). Demonstrate on trades A, B, C. (10)


Question 3 — Account Setup Reasoning & POA/DDPI Proof-Style Argument (16 marks)

(a) A retail investor claims: "With DDPI (Demat Debit and Pledge Instruction) instead of a traditional POA, my broker can never move my shares without my per-trade authorization." Evaluate this claim. Explain precisely what DDPI authorizes, and construct a counter-scenario where shares ARE debited via DDPI without a fresh e-sign, versus a case where the trader retains control. (8)

(b) Reconcile a contract note with a ledger statement. On a settlement, the contract note shows a net payable of 90,250.50₹90{,}250.50 (buy value + charges). The bank/UPI mandate debits the trading account. The trader's ledger opening balance was 1,00,000₹1{,}00{,}000. AMC of 300+18%₹300 + 18\% GST is also debited that month. Compute the closing ledger balance and explain which document is the legally binding transaction record and why. (8)

Answer keyMark scheme & solutions

Question 1

(a) Numerical charges (10 marks)

Buy turnover =200×450=90,000= 200 \times 450 = ₹90{,}000 Sell turnover =200×458=91,600= 200 \times 458 = ₹91{,}600 Total turnover =181,600= ₹181{,}600 (1)

  • Brokerage buy =min(0.03%×90000,20)=min(27,20)=20= \min(0.03\%\times 90000, 20) = \min(27, 20) = ₹20 (1)
  • Brokerage sell =min(0.03%×91600,20)=min(27.48,20)=20= \min(0.03\%\times 91600, 20) = \min(27.48,20) = ₹20 → total brokerage =40= ₹40 (1)
  • STT (sell only) =0.025%×91600=22.90= 0.025\% \times 91600 = ₹22.90 (1)
  • Exchange txn =0.00297%×181600=5.39355.39= 0.00297\% \times 181600 = ₹5.3935 \approx ₹5.39 (1)
  • SEBI =0.0001%×181600=0.18160.18= 0.0001\% \times 181600 = ₹0.1816 \approx ₹0.18 (1)
  • Stamp (buy only) =0.003%×90000=2.70= 0.003\% \times 90000 = ₹2.70 (1)
  • GST =18%×(40+5.3935)=18%×45.3935=8.17088.17= 18\% \times (40 + 5.3935) = 18\% \times 45.3935 = ₹8.1708 \approx ₹8.17 (1)

Total charges =40+22.90+5.39+0.18+2.70+8.17=79.34= 40 + 22.90 + 5.39 + 0.18 + 2.70 + 8.17 = ₹79.34 (1)

Gross profit =(458450)×200=1600= (458-450)\times 200 = ₹1600. Net profit =160079.34=1520.66= 1600 - 79.34 = ₹1520.66 (1)

(Accept ₹1520.64–1520.66 depending on rounding order.)

(b) Symbolic model (8 marks)

Let turnover per leg =np= np (same price both legs). Total turnover =2np= 2np. (1)

Brokerage per leg =min(0.0003np, 20)= \min(0.0003\,np,\ 20); total B=2min(0.0003np,20)B = 2\min(0.0003\,np,20). (2) The cap binds when 0.0003np20np66,666.670.0003\,np \ge 20 \Rightarrow np \ge ₹66{,}666.67. (2)

Other charges (turnover-based):

  • STT =0.00025np= 0.00025\,np (sell side)
  • Exch =0.00002972np=0.0000594np= 0.0000297\cdot 2np = 0.0000594\,np
  • SEBI =0.0000012np=0.000002np= 0.000001\cdot 2np = 0.000002\,np
  • Stamp =0.00003np= 0.00003\,np (buy side)
  • GST =0.18(B+0.0000594np)= 0.18(B + 0.0000594\,np) (2)

C(p,n)=B+0.00025np+0.0000594np+0.000002np+0.00003np+0.18(B+0.0000594np)C(p,n)=B+0.00025np+0.0000594np+0.000002np+0.00003np+0.18(B+0.0000594np) C=1.18B+np(0.00025+0.0000594+0.000002+0.00003)+0.18(0.0000594np)\boxed{C=1.18\,B + np\big(0.00025+0.0000594+0.000002+0.00003\big)+0.18(0.0000594np)} Simplify turnover coefficient: 0.00025+0.0000594+0.000002+0.00003=0.00034140.00025+0.0000594+0.000002+0.00003 = 0.0003414; plus GST on exch 0.18×0.0000594=0.00001069200.18\times0.0000594=0.0000106920. C(p,n)=1.18B+0.0003520920npB=2min(0.0003np,20)\boxed{C(p,n)=1.18\,B + 0.0003520920\,np}\quad B=2\min(0.0003np,20) (1)

(c) Break-even move (6 marks)

For n=200n=200, p=450p=450: buy leg turnover =90000=90000; here cap binds on buy (0.0003×90000=27>200.0003\times90000=27>20). Using symbolic per-leg but sell price =p+Δ=p+\Delta; both legs near ₹90k so both brokerage capped at ₹20 → B=40B=40. (1)

Break-even: gross profit = charges. 200Δ=C200\Delta = C. With turnover using average ≈ buy side, use exact charges structure:

Charges (as functions of Δ\Delta, small): STT on sell =0.00025200(450+Δ)=0.00025\cdot200(450+\Delta), stamp on buy =0.0000390000=2.7=0.00003\cdot90000=2.7, exch on total =0.0000297200(900+Δ)=0.0000297\cdot200(900+\Delta), SEBI =0.000001200(900+Δ)=0.000001\cdot200(900+\Delta), GST =0.18(40+exch)=0.18(40+\text{exch}). (2)

Approximate (neglecting Δ\Delta inside charge turnovers, since Δ450\Delta\ll450): C79.34C\approx 79.34 from part (a) baseline scaled — actually at Δ\Delta\to break-even charges ≈ ₹79.3. 200Δ79.3Δ0.3970.40 per share200\Delta \approx 79.3 \Rightarrow \Delta \approx ₹0.397 \approx ₹0.40 \text{ per share} (2)

So a move of about ₹0.40/share (i.e. price 450.40\approx 450.40) covers costs. (1)


Question 2

(a) Settlement dates & DP charges (10 marks)

Weekend rule: settlement skips Sat/Sun.

  • Trade A (Thu sell): T+1 = Friday → INFY 50 debited Friday. DP charge applies (delivery sell). (2)
  • Trade B (Fri sell): T+1 falls on Sat → skip weekend → Monday debit. DP charge applies. (2)
  • Trade C (Fri buy): T+1 = Monday credit. No DP charge (buy). (2)

DP per scrip =13.5×1.18=15.93= 13.5 \times 1.18 = ₹15.93. (2)

  • Trade A: 1 scrip → ₹15.93
  • Trade B: 1 scrip → ₹15.93
  • Trade C: ₹0

Grand total DP = ₹31.86 (2)

(b) Python (10 marks)

def settlement_date(trade_day_index):
    # 0=Mon ... 6=Sun ; T+1 skipping weekends
    d = trade_day_index + 1
    while d % 7 in (5, 6):   # Sat=5, Sun=6
        d += 1
    return d % 7
 
def dp_charge(is_delivery_sell, num_scrips):
    if not is_delivery_sell:
        return 0.0
    return round(num_scrips * 13.5 * 1.18, 2)
 
# Trade A: Thu=3 -> 4=Fri ; B: Fri=4 -> Mon=0 ; C: buy
assert settlement_date(3) == 4    # Fri
assert settlement_date(4) == 0    # Mon
total = dp_charge(True,1) + dp_charge(True,1) + dp_charge(False,10)
print(total)   # 31.86

Marks: settlement_date weekend loop (4), dp_charge GST logic (3), correct demo outputs Fri/Mon and 31.86 (3).


Question 3

(a) DDPI evaluation (8 marks)

  • Claim is FALSE / overstated. DDPI authorizes the broker to debit securities from your demat for the specific purposes of settlement of sell trades and pledging for margin — without a per-trade e-sign/OTP each time. (3)
  • Counter-scenario (debit without fresh e-sign): trader places a delivery sell order; on settlement the broker uses the DDPI to auto-debit shares from demat to fulfil delivery — no additional authorization step required. This is exactly what DDPI enables. (3)
  • Retained-control case: DDPI (unlike old broad POA) is purpose-limited — it cannot be used to move shares to unrelated accounts, sell holdings the client didn't order, or off-market transfers. So control is retained against unauthorized moves, but NOT against auto-debit of the trader's own sell orders. (2)

(b) Ledger reconciliation (8 marks)

Opening balance =1,00,000= ₹1{,}00{,}000. (1) Settlement payable (contract-note net) debited =90,250.50= ₹90{,}250.50. (2) AMC =300×1.18=354.00= 300 \times 1.18 = ₹354.00 debited. (2)

Closing =10000090250.50354.00=9,395.50= 100000 - 90250.50 - 354.00 = ₹9{,}395.50. (2)

Legally binding record: the contract note is the primary legal document evidencing the trade (price, qty, charges, brokerage) issued by the broker; the ledger is a running account summary. The contract note is the enforceable transaction record. (1)


[
  {"claim":"Q1a total charges ≈ 79.34 and net profit ≈ 1520.66","code":"buy_t=200*450; sell_t=200*458; tot=buy_t+sell_t; brok=min(0.0003*buy_t,20)+min(0.0003*sell_t,20); stt=0.00025*sell_t; exch=0.0000297*tot; sebi=0.000001*tot; stamp=0.00003*buy_t; gst=0.18*(brok+exch); charges=brok+stt+exch+sebi+stamp+gst; net=1600-charges; result=(abs(charges-79.34)<0.05) and (abs(net-1520.66)<0.05)"},
  {"claim":"Brokerage cap binds when np>=66666.67","code":"thr=20/0.0003; result=abs(thr-66666.6667)<0.01"},
  {"claim":"DP per scrip = 15.93 and grand total = 31.86","code":"per=round(13.5*1.18,2); total=per+per+0; result=(abs(per-15.93)<0.005) and (abs(total-31.86)<0.005)"},
  {"claim":"Q3b closing ledger = 9395.50","code":"amc=300*1.18; close=100000-90250.50-amc; result=abs(close-9395.50)<0.01"},
  {"claim":"Q1c break-even move ≈ 0.40 rupees/share","code":"delta=79.34/200; result=abs(delta-0.40)<0.02"}
]