If someone buys shares with the intention of selling them, then their value drops below the purchase price, how should he give zakah on them?
Question

How should I give zakah on shares which I bought three years ago for the purpose of selling them, but I was not able to sell them, because I would not make any profit. I am waiting until they reach the purchase price or more, then I will sell them, in sha Allah.
Praise be to Allah.If someone buys shares with the intention of selling them, then they are trade goods and are subject to zakah every year. So he should work out their value when one (Hijri) year has passed, then give one quarter of one tenth (2.5%) as zakah, whether the value has dropped below the purchase price or has risen.
If he does not have cash to give, he should work out the zakah that is due, then wait until he sells the shares, after which he must give what he owns.
The Permanent Committee was asked about real estate shares, which have remained for a long time with no increase in their value, and which may have fallen below the basic market value.
They replied: The shares mentioned in the question come under the heading of trade goods, so they are subject to zakah. Their value must be worked out every year, regardless of the purchase price. Then if the owner has money he should pay zakah from it, otherwise he should give zakah for past years after he sells them and receives payment for them."(Fatawa al-Lajnah ad-Da’imah  9/353).
Shaykh Ibn ‘Uthaymin (may Allah have mercy on him) was asked: Should zakah on shares be based on the official value of the share or on its market value, or what?
He replied: Zakah on shares and other trade goods should be based on the market value. So if at the time of purchase the value was one thousand, then it it has risen to two thousand at the time when zakah becomes due, the value should be regarded as being two thousand, because what matters is the value at the time when zakah becomes due, not the value at the time of purchase."(Majmu‘ Fatawa Ibn ‘Uthaymin 18/197).
For more information, please see the answers to questions no. 231858 and 130487 .
The time for paying zakah on shares is the time for paying zakah on the cash with which you bought the shares, if the cash reached the minimum threshold (nisab). So if someone acquired cash which reached the minimum threshold, which is equivalent to 595 grams of silver, in Ramadan, then he bought shares with it in Dhu’l-Hijjah, the zakah year begins in Ramadan. 
In Zad al-Mustaqni‘ p. 87, it says: If he bought trade goods with cash or other goods that reached the minimum threshold, then the zakah year for what he bought is the same as the zakah year for the wealth with which he purchased those goods.
So the minimum threshold for cash is: 595 x 3.66 = 21,777 riyals.
If the cash did not reach the minimum threshold, then the zakah year begins from when the value of the shares reached the minimum threshold.
For more information, please see the answer to question no. 99400 .
And Allah knows best.