Hi Suman,
There is no such way to 'create' an MDO object dynamically, but you can populate data in a pre-created empty MDO object dynamically, as required.
Use MDO Query in a transaction in its 'INSERT' mode to dynamically populate the pre-created MDO object with relevant data as and when needed.
--Rutika