Keep thinking your jobs are lost due to H1Bs, or due to Indians being hired overseas when the company opens a branch there.
You are just blind, your jobs are lost at a much higher level because American management nowadays hires foreign contractors, but this is invisible to you. Thus, you can't complain about what you can't see.
Contractors are the easiest way to outsource, because a cheaper price is offered over a proven track record. It's as simple as that.
I run a company overseas that gets contract work from American companies, which recently fired 1000 American employees because they would rather outsource the job to many overseas companies like mine (which are not even in India). Simple Facts:
-American workers are simply too expensive compared with the rest of the world.
-American education is simply too expensive compared with the rest of the world
-America used to lead in science in technology, but the rest of the world catches up quickly
And you know what is worse? Most other developed countries (Canada, Germany, France, Australia, New Zealand, etc) have a totally opposite immigration policy, which encourages skilled workers to migrate and help their industries grow in exchange for a better quality of life. This in turn takes away more American jobs because of competition, as those countries are less expensive and/or subsidized.
The best you can do is to understand and accept this in the first place. You country still has an excellent quality of life, and your jobs being lost to other qualified people is not something you can avoid. Change your immigration policy so skilled workers go to the US instead, and give them more rights so employers can't abuse the H1B restrictions to make them work like cheap cattle, so at least you are not at a cost disadvantage in the playing field. You have to wake up before it's too late!