My dream job is to work in one of the trading houses such as Glencore, Vitol, Trafigura, etc. I am currently a sophomore in Computer Science, considering a second major in either Applied Math or Computational Statistics. However, math is not my strong suit, so most likely it will be Computational Statistics. I am also open to the idea of minoring in math or stats.
In terms of classes, I have finished calculus, finishing up linear algebra this quarter. I know differential equations is important to financial engineering; I may take that in the spring. Currently in an assembly class, will be taking data structures next quarter. I have taken macroeconomics and might be taking microecon next quarter. I have a 3.3 GPA; however, this includes a D- I unfortunately received in calc 4, which I am retaking (replaces the grade). It should rise to at least 3.5 by next quarter. I know I need to drastically improve my GPA to increase my chances of getting into a good grad school.
Other than getting a strong GPA, what else can help me get into a top financial engineering program? Would any kind of CS related internships be good? Also, my university offers various tracks for CS: databases and data management, graphics and visualization, networking, security and cryptography, systems and software engineering. Which one of these would be most useful towards my (dream) career? What else can I do to get my dream job?