Share:

Greetings Investors! Today we are going to explain how Groww calculates the average price of a stock holding. We will discuss 5 main cases and see how the calculation for the average price of a holding changes for each of these. Read on! 

Formula Used 

At Groww, we use this formula to calculate the average price of stockholding:

Average Price= [(Total value of holding transactions)+(Net value of delivery positions)] / [(Total shares in holding transactions)+(Net shares  of delivery positions)]

where the delivery position is the net buy and sell orders executed for a stock on the trading day

To understand the average price calculation on Groww, we will look at five situations:

1. When You Have Holding Transactions Only (i.e. no delivery positions)

Let’s say that you currently hold 200 shares of ABC Ltd. and have not bought or sold any shares of the company today. In such cases, the average price will be the weighted average of all your past transactions after excluding the sell transactions. Let’s say that you did the following transactions:

  • Buy – 50 shares on April 03, 2020, at Rs.100 per share
  • Buy – 30 shares on April 26, 2020, at Rs.110 per share
  • Buy 100 shares on May 08, 2020, at Rs.90 per share
  • Sell – 50 shares on June 06, 2020, at Rs.120 per share
  • Buy – 70 shares on August 01, 2020, at Rs.95 per share

Following will be visible in your holding transactions – 

To calculate the average price, Groww will determine your holdings by deducting the sold shares from the purchased quantity. Since there is a single transaction of selling 50 shares, using the First-In-First-Out methodology, the shares purchased on April 03, 2020, will be removed from the holdings against shares sold on June 06, 2020. Therefore, the average price will be calculated as follows:

Average Price= [Total value of holding transactions+Net  value of delivery positions][Total shares in holding transactions+(Net shares  of delivery positions)

Average Price= [{(30 *110) + (100*90) + (70*95)}+{0}] / [30 + 70 + 100+(0)]= 18950/200 = Rs.94.75

As you can see, this is a weighted average of all your buy transactions after adjusting for any sale transactions.

2. When You Have Delivery Positions Only (i.e all buys and all sells done today)

Let’s say that, currently, you don’t hold any shares of ABC Ltd. If you decide to trade in the shares of ABC Ltd., the average price calculation will be done as follows:

Buy orders only

The average price will be calculated as a simple mathematical average of all the buy orders in the day

Buy and Sell orders

The average price will be calculated on the net buy position during the day. Here is an example:

You do the following transactions during the day:

  • You buy 50 shares of ABC Ltd. at Rs.90 per share at 11 am
  • You buy 50 shares of ABC Ltd. at Rs.100 per share at 1 pm
  • You sell 50 shares of ABC Ltd. at Rs.70 per share at 3 pm

 

The average price at 3 PM will be calculated as follows:

Average Price= [Total value of holding transactions+Net  value of delivery positions][Total shares in holding transactions+(Net shares  of delivery positions)

Average Price= [{0}+{50*90) + (50*100) – (50*70}] / [0+(50 + 50 – 50)]= 6000/50 = Rs.120.00

3. Average Price Calculation for a Buy Order Placed Today

Let’s say that you currently hold 200 shares of ABC Ltd. and have bought some shares of the company today. In such cases, the average price will be the weighted average of your holding transactions plus the buy transaction made today. Let’s say that you did the following transactions:

  • Buy – 50 shares on April 03, 2020, at Rs.100 per share
  • Buy – 30 shares on April 26, 2020, at Rs.110 per share
  • Buy 100 shares on May 08, 2020, at Rs.90 per share
  • Sell – 50 shares on June 06, 2020, at Rs.120 per share
  • Buy – 70 shares on August 01, 2020, at Rs.95 per share
  • Buy – 50 shares today at Rs.98 per share

To calculate the average price, Groww will determine your holdings by deducting the sold shares from the purchased quantity. Since there is a single transaction of selling 50 shares, using the First-In-First-Out methodology, the shares purchased on April 03, 2020, will be removed from the holdings. The calculation will also factor in the purchase transaction made today. Therefore, the average price will be calculated as follows:

Average Price= [Total value of holding transactions+Net  value of delivery positions][Total shares in holding transactions+(Net shares  of delivery positions)

Average Price= [{(30*110) + (100*90) + (70*95)}+{50*98}] / [30 + 100 + 70 + (50)]= 23850/250 = Rs.95.40

As you can see, this is a weighted average of all your buy transactions after adjusting for any sale transactions and the specific buy transaction is done today.

4. Average Price Calculation for a Sell Order Placed Today

Let’s say that you currently hold 200 shares of ABC Ltd. and have sold some shares of the company today. In such cases, the average price will be the weighted average of all your past transactions after excluding the sell transactions minus the sell transaction made today. Let’s say that you did the following transactions:

  • Buy – 50 shares on April 03, 2020, at Rs.100 per share
  • Buy – 30 shares on April 26, 2020, at Rs.110 per share
  • Buy 100 shares on May 08, 2020, at Rs.90 per share
  • Sell – 50 shares on June 06, 2020, at Rs.120 per share
  • Buy – 70 shares on August 01, 2020, at Rs.95 per share
  • Sell – 30 shares today at Rs.105 per share intraday

To calculate the average price, Groww will determine your holdings by deducting the sold shares from the purchased quantity. Since there are two transactions of selling shares, using the First-In-First-Out methodology, the shares purchased on April 03, 2020, will be removed for the first sale of 50 shares and the second purchase on April 26, 2020, will be removed for the second sale of 30 shares from the holdings. Therefore, the average price will be calculated as follows:

Average Price= [Total value of holding transactions+Net  value of delivery positions][Total shares in holding transactions+(Net shares  of delivery positions)

Average Price= [{(30*110) + (100*90) + (70*95)}+{-30*105}] / [30 + 100 + 70 + (-30)]= 15800/170 = Rs.92.95

As you can see, this is a weighted average of all your buy transactions after adjusting for any sale transactions and the sell transaction is done today. It is also important to note that since these are for delivery-based orders, you cannot have a sell transaction if your holdings are zero.

5. Average Price calculation for a Buy and Sell Order Placed Today

Let’s say that you currently hold 200 shares of ABC Ltd. and have bought and sold some shares of the company today. In such cases, the average price will be the weighted average of all your past transactions after excluding the sell transactions minus the sell transactions plus the buy transactions made today. Let’s say that you did the following transactions:

  • Buy – 50 shares on April 03, 2020, at Rs.100 per share
  • Buy – 30 shares on April 26, 2020, at Rs.110 per share
  • Buy 100 shares on May 08, 2020, at Rs.90 per share
  • Sell – 50 shares on June 06, 2020, at Rs.120 per share
  • Buy – 70 shares on August 01, 2020, at Rs.95 per share
  • Sell – 30 shares today at Rs.105 per share
  • Buy – 50 shares today at Rs.98 per share

To calculate the average price, Groww will first look at the net purchase/sell position from today’s transactions. Since you have purchased 50 shares and sold 30 shares today, your today’s transactions will have a net position of -20 shares. At the end of the day, 20 shares will be deducted from your oldest purchase (the one on April 03, 2020). The average price will be calculated as follows:

Average Price= [Total value of holding transactions+Net  value of delivery positions][Total shares in holding transactions+(Net shares  of delivery positions)

Average Price= [{(30 *110) + (100* 90) + (70*95)}+{50*98) – (30*105}] / [30 + 100 + 70 + (50 – 30)]= 20700/220 = Rs.94.10

As you can see, this is a weighted average of all your buy transactions after adjusting for any sale transactions and the buy/sell transactions done today. 

Hope this was helpful!

Share: