One could halt immigration--or at least the kind of immigration that most anti-immigration people complain about--in a naive and oversimplified fashion by raising the minimum hourly wage of noncitizen permanent residents to the median annual household income divided by 2000 (~$32/h), raising the minimum hourly wage for temporary residents with a work-permitting visa to 125% of that (~$40/h), and raising the minimum wage of persons without any official immigration status to 150% (~$48/h) of that. In order to get a job that pays less, a person would have to show their visa, residency card, or proof of citizenship. For jobs that pay more, who cares, as long as they support local business and pay taxes?
Don't deport anybody. Don't build a wall. Just make any businesses that hire at lower wages, without first verifying citizenship or immigration status, pay the workers all their back wages.
The economics shape and are shaped by human behavior.