Who creates the initial budget for an agile project? What is SM's role in defining it? Is it a duty of Management Team?
Any idea? Please suggest.
From my experience there is not an initial budget. Everywhere I have worked has had staffing budgets to provide for the team members. The work would be done just like any other work that the teams have done. It is considered cost of doing business. If any kind of budget or billing for a client are needed, it can be done incrementally.
In my experience, my organization and our client decided initial level budget and time lines way before agile teams were actually formed.
Once the teams are created then it is expected that team would create value sooner than later so that early value or Retrun of Investment(ROI) could be provided. Based on ROI, organization will decide how much more money and resources to pour in further. Though it is product owner's responsibility to ensure that ROI is achieved but scrum master can play a vital role in educating team in this regard specially in initial phase of the project. Scrum master will also try to highlight (radiate) to sponsors that value is being met to ensure that further budgetary constraints are taken care of.
I would suggest you to read on agile contracts. It may give you brief idea of what you are looking for.