Serving the Quantitative Finance Community

• 1
• 2

ollieschmidt
Topic Author
Posts: 1
Joined: June 23rd, 2021, 6:40 pm

### Financial Modeling/Visual Basic Course Recommendation

Hello everyone. I am currently a finance student at UW-Madison who has just finished their first year! I finished with good grades and feel that I strongly showed my academic skills; however, I am looking to utilize my free time over the summer to foster quantitative skills outside what is taught just in the classroom. More specifically, I am looking for a strong foundational course on financial modeling and a course on visual basic. Seeing that I am only a freshman, I have no real understanding of financial modeling at this time, but am eager to find good courses that can give me the foundation which I need. Please let me know if you have any recommendations! Any and all are welcome.

Alan
Posts: 10714
Joined: December 19th, 2001, 4:01 am
Location: California
Contact:

### Re: Financial Modeling/Visual Basic Course Recommendation

I'd start with something relatively easy: learn to create basic mortgage/bond/internal-rate-of-return functionality. Can you compute a bond's yield, given price and cash flows? Buy some books and try youtube.

bearish
Posts: 6636
Joined: February 3rd, 2011, 2:19 pm

### Re: Financial Modeling/Visual Basic Course Recommendation

That is sound advice and while I’m actually generally pretty positive on VBA, I’d suggest looking into Julia, in particular this course (well, technically, book): https://leanpub.com/julia-for-beginners

Cuchulainn
Posts: 65000
Joined: July 16th, 2004, 7:38 am
Location: Drosophila melanogaster
Contact:

### Re: Financial Modeling/Visual Basic Course Recommendation

I suppose it depends on your short-term and long-term objectives (Pareto optimality and all that). VBA is very very useful with Excel but is it not getting long in the tooth (ROI?). And some consider Julia to be a quiche language.
Other alternatives are Python, C++ ad C# (Excel-DNA). Basically, what are your goals?

Here is a nice summary of using VBA in Excel by calling C dlls

http://www.axelvogt.de/axalom/Working_w ... el_VBA.pdf
"Compatibility means deliberately repeating other people's mistakes."
David Wheeler

http://www.datasimfinancial.com
http://www.datasim.nl

bearish
Posts: 6636
Joined: February 3rd, 2011, 2:19 pm

### Re: Financial Modeling/Visual Basic Course Recommendation

I suppose it depends on your short-term and long-term objectives (Pareto optimality and all that). VBA is very very useful with Excel but is it not getting long in the tooth (ROI?). And some consider Julia to be a quiche language.
Other alternatives are Python, C++ ad C# (Excel-DNA). Basically, what are your goals?

Here is a nice summary of using VBA in Excel by calling C dlls

http://www.axelvogt.de/axalom/Working_w ... el_VBA.pdf

That nice summary is probably as useful to OP as a treatise on the fine points of operator splitting methods to somebody who has expressed a curiosity about calculus.

Cuchulainn
Posts: 65000
Joined: July 16th, 2004, 7:38 am
Location: Drosophila melanogaster
Contact:

### Re: Financial Modeling/Visual Basic Course Recommendation

It's better than your Julia choice, haha. Julia is trendy.
I was never a fan of reasoning by analogy.
Basically, OP wants to learn finance and programming. That's two goals..
"Compatibility means deliberately repeating other people's mistakes."
David Wheeler

http://www.datasimfinancial.com
http://www.datasim.nl

Cuchulainn
Posts: 65000
Joined: July 16th, 2004, 7:38 am
Location: Drosophila melanogaster
Contact:

### Re: Financial Modeling/Visual Basic Course Recommendation

I would say forget VBA (old hat) and go for Python.

"Compatibility means deliberately repeating other people's mistakes."
David Wheeler

http://www.datasimfinancial.com
http://www.datasim.nl

Cuchulainn
Posts: 65000
Joined: July 16th, 2004, 7:38 am
Location: Drosophila melanogaster
Contact:

### Re: Financial Modeling/Visual Basic Course Recommendation

If you have a budget, I strongly recommend this course
https://quantnet.com/python/
"Compatibility means deliberately repeating other people's mistakes."
David Wheeler

http://www.datasimfinancial.com
http://www.datasim.nl

bearish
Posts: 6636
Joined: February 3rd, 2011, 2:19 pm

### Re: Financial Modeling/Visual Basic Course Recommendation

It's better than your Julia choice, haha. Julia is trendy.
I was never a fan of reasoning by analogy.
Basically, OP wants to learn finance and programming. That's two goals..
I think you are totally wrong about Julia, but new tricks may not be the forte of old dogs.

Poking around a bit in the Wild West of online courses, this one looks kind of interesting: https://www.coursera.org/learn/financia ... HFxW6yx8Uo

Cuchulainn
Posts: 65000
Joined: July 16th, 2004, 7:38 am
Location: Drosophila melanogaster
Contact:

### Re: Financial Modeling/Visual Basic Course Recommendation

It's better than your Julia choice, haha. Julia is trendy.
I was never a fan of reasoning by analogy.
Basically, OP wants to learn finance and programming. That's two goals..
I think you are totally wrong about Julia, but new tricks may not be the forte of old dogs.

Poking around a bit in the Wild West of online courses, this one looks kind of interesting: https://www.coursera.org/learn/financia ... HFxW6yx8Uo
I don't see people clamouring to study Julia. It's all about ROI.
When US MFE programmes want to switch to Julia then that's the time.

Besides, the choice of language is not crucial.
"Compatibility means deliberately repeating other people's mistakes."
David Wheeler

http://www.datasimfinancial.com
http://www.datasim.nl

Cuchulainn
Posts: 65000
Joined: July 16th, 2004, 7:38 am
Location: Drosophila melanogaster
Contact:

### Re: Financial Modeling/Visual Basic Course Recommendation

One more thing, were I to "learn" Julia would entail using software I already know from C++ etc. for 40 years and numerical analysis for even longer, Python has it all.
Using a linked list or a lambda function in Julia is not funny. Each to his own.

In other words, I've seen most of it before, like Mission Impossible movies/series.
"Compatibility means deliberately repeating other people's mistakes."
David Wheeler

http://www.datasimfinancial.com
http://www.datasim.nl

bearish
Posts: 6636
Joined: February 3rd, 2011, 2:19 pm

### Re: Financial Modeling/Visual Basic Course Recommendation

It's better than your Julia choice, haha. Julia is trendy.
I was never a fan of reasoning by analogy.
Basically, OP wants to learn finance and programming. That's two goals..
I think you are totally wrong about Julia, but new tricks may not be the forte of old dogs.

Poking around a bit in the Wild West of online courses, this one looks kind of interesting: https://www.coursera.org/learn/financia ... HFxW6yx8Uo
I don't see people clamouring to study Julia. It's all about ROI.
When US MFE programmes want to switch to Julia then that's the time.

Besides, the choice of language is not crucial.

Brief recap. OP (rising sophomore business student) inquired about summer classes to learn Visual Basic and finance. Leaving the finance bit aside, I suggested he look into Julia as a slightly easier language to learn than VBA, and you pointed him to an ancient scroll describing how to access DLLs written in C from VBA. Then you mercifully skipped the C++ lecture and went to Python. Which is a perfectly reasonable suggestion, although setting the bar meaningfully higher. Your later comments about linked lists and lambda functions in Julia are just odd. And I certainly wouldn’t give a lot of weight to the demands from Chinese students destined to a life in model risk management when it comes to the choice of what language to pick for the purpose of learning to program. My choice would be a language that has a short path to being able to actually do something, like:

f(x)=x^2
f(3)
f(2.1)
f(1+2im)
A=[2 3; 4 5]
f(A)
f.(A)

This is “programming” in the sense of getting a computer to do stuff for you. It illustrates the concepts of a function, an array, a couple of different data types, as well as the rather abstract notion of type inference. No semicolon, white space, pointy brackets or other overhead required. It may not build as much character as “real” programming, but my guess is that it is rather more inviting to the novice.

Cuchulainn
Posts: 65000
Joined: July 16th, 2004, 7:38 am
Location: Drosophila melanogaster
Contact:

### Re: Financial Modeling/Visual Basic Course Recommendation

The finance industry was built on VBA I suspect. VBA is easier than Julia for business students.

I will only listen to you if you know Python and Julia. Well, do you? It's just Lisp (MIT?)

Maybe julia stands for “Jeff’s uncommon lisp is automated”?

f(x)=x^2
f(3)
f(2.1)
f(1+2im)
A=[2 3; 4 5]
f(A)
f.(A)

Last edited by Cuchulainn on July 1st, 2021, 7:56 pm, edited 1 time in total.
"Compatibility means deliberately repeating other people's mistakes."
David Wheeler

http://www.datasimfinancial.com
http://www.datasim.nl

Cuchulainn
Posts: 65000
Joined: July 16th, 2004, 7:38 am
Location: Drosophila melanogaster
Contact:

### Re: Financial Modeling/Visual Basic Course Recommendation

how to explain this to business kids, bearish. Try it and see.

Distinctive aspects of Julia's design include a type system with parametric polymorphism in a dynamic programming language; with multiple dispatch as its core programming paradigm. Julia supports concurrent, (composable) parallel and distributed computing (with or without using MPI[29] or the built-in corresponding[clarification needed][30] to "OpenMP-style" threads[31]), and direct calling of C and Fortran libraries without glue code. Julia uses a just-in-time (JIT) compiler that is referred to as "just-ahead-of-time" (JAOT) in the Julia community, as Julia compiles all code (by default) to machine code before running it.[32][33]
"Compatibility means deliberately repeating other people's mistakes."
David Wheeler

http://www.datasimfinancial.com
http://www.datasim.nl

bearish
Posts: 6636
Joined: February 3rd, 2011, 2:19 pm

### Re: Financial Modeling/Visual Basic Course Recommendation

how to explain this to business kids, bearish. Try it and see.

Distinctive aspects of Julia's design include a type system with parametric polymorphism in a dynamic programming language; with multiple dispatch as its core programming paradigm. Julia supports concurrent, (composable) parallel and distributed computing (with or without using MPI[29] or the built-in corresponding[clarification needed][30] to "OpenMP-style" threads[31]), and direct calling of C and Fortran libraries without glue code. Julia uses a just-in-time (JIT) compiler that is referred to as "just-ahead-of-time" (JAOT) in the Julia community, as Julia compiles all code (by default) to machine code before running it.[32][33]

That stuff is on a need-to know basis, and casual programmers just don’t need to know. I know you don’t like analogies, but it’s like a description of how a modern car engine works. There is no need to know it in order to drive the car.