Basic trading. Needs testing.