J.P. Morgan Chase & Co. notched $250 million to $300 million in gains after the Swiss central bank triggered turmoil in the markets in mid-January, a person familiar with the gains said.

This comes as other banks, brokers and individual investors suffered hundreds of millions in losses when the Swiss currency jumped following the Swiss National Bank’s decision to stop reining in the value of the franc against the euro. The...