Sneak Peek inside a trading firm | Why Python? | iRage HFT Firm | Quantra by QuantInsti - YouTube

Channel: Quantra

[16]
Algorithmic trading is the process
[17]
of creating a computer algorithm
[19]
which prevents traders behavior on
[21]
the exchange.
[22]
So basically,
[23]
the objective is to have a set of
[27]
instruction which behave / operate
[28]
on the exchanges in a way, in the
[31]
same way the trader would have
[32]
operated manually.
[33]
SAMEER: So anything
[34]
can be broken down, any problem can be
[37]
broken down into a series
[38]
of steps, and if it can be broken down
[41]
then I can code it out.
[43]
And that is primarily what belongs
[46]
to the algo trading domain.
[47]
SHANTALU: More disciplined way of trading,
[48]
it takes out human emotion out of your
[51]
strategies and so whatever trading we
[53]
do is basically based on statistical
[54]
analysis or back-tested results that
[56]
you have.
[59]
GAURAV: Quant trading would
[61]
be any implementation of a trading
[64]
strategy using statistics and
[66]
some kind of modeling.
[67]
It would essentially give the trading
[68]
model a bit of sophistication and
[69]
mathematics to back it up.
[72]
DHAVAL: Algo trading and automated
[76]
trading, you can say they are subset
[78]
of a quant trading.
[81]
So algo trading is basically when you
[84]
have a logic, you want to follow that
[86]
logic and then create, that is
[87]
basically your algo trading.
[88]
When you let that logic trade on your
[92]
behalf, that becomes basically
[93]
automated trading.
[95]
RAJAT: So typical
[98]
day for a algorithmic trader, for me is,
[102]
first of all we go through
[105]
all the markets, we see all the latest
[109]
updates that have happened from
[111]
the end of our trading
[112]
day to the start of the day.
[115]
We decide the parameters, we input those
[117]
parameters based on our analysis,
[119]
based on the reports that we have got,
[123]
automated reports.
[124]
DHAVAL: There are three
[125]
things, one would be some operational
[126]
task where just generate
[128]
some reports, second would be doing some
[131]
research which will help us improve
[133]
the existing strategies.
[134]
Strategies that are live.
[135]
Doing research, that strategies will be
[138]
improved.
[139]
Because one strategy cannot
[140]
make money all the time.
[141]
You have to
[142]
improve that strategy everyday, because
[144]
it's very very competitive.
[146]
And third would be working on new strategies.
[150]
DEEPAK: Python is ideally suited for a
[156]
machine learning kind of work which we are
[158]
using here to generate trading signals,
[161]
for automatically re-balancing a portfolio.
[166]
SAMEER: I started with Pol, which was
[173]
10 years back that used to be the main language.
[179]
Then I had to pickup Octive, because that was
[180]
the primary language in the statistical domain.
[181]
so now, after that R came into picture and R
[183]
took-up quite of, bit of stride into this
[188]
quantitative domain and the scientific community.
[190]
Most of the machine learning new
[192]
packages are primarily into Python.
[194]
They first get release in the Python and then
[197]
they are copied into other languages, so while
[200]
I was doing R and I didn't want to move to
[202]
any other languages, because I already learned
[203]
10 more languages already.
[204]
So the primary reason why I had to
[207]
move to Python is because all
[209]
the packages are released
[210]
first in Python and then they
[212]
will take another 3 to 6 months
[214]
to get released in other languages,
[216]
in R or any language.
[217]
NEHA: While initially I was using R,
[219]
but then when I started working
[221]
with machine learning,
[223]
I moved with Python because it has
[226]
better APIs and libraries
[227]
for machine learning.
[228]
And since then I started doing
[230]
all my analysis in Python.
[231]
HIMANSHU: As the data scientist,
[233]
Python is the language to
[234]
learn because it is the
[236]
most maintained language, the libraries,
[238]
so you don't have to do everything
[239]
from scratch.
[240]
The people have written
[242]
the codes so you don't need to
[243]
reinvent the wheel, you can use the
[245]
lot of the libraries.
[246]
PRINKESH: So in Python, I have actually
[248]
worked from building a web framework,
[251]
back-end for a web framework to like
[254]
UI development for displaying
[256]
real time data to controlling
[258]
different strategies from
[259]
Python as a CEP engine.
[260]
SAMEER: According to all those
[261]
agencies which rates which
[262]
language you should pick up
[263]
or which is the hot domain,
[264]
data science is one of the
[267]
top most domain and primary
[268]
language for data science is Python.
[271]
GAURAV: Off late, Python has come
[276]
up as a strong alternative to
[278]
any other programming language,
[280]
specially in quantitative tasks because
[282]
there is a broad user base for Python,
[285]
there are lot of libraries available for
[287]
Python and this enable us to move ahead faster,
[292]
if we are to do some kind of quant based trading.
[295]
DHAVAL: Use Python, then it will be faster
[298]
and it is production ready.
[299]
So you cannot deploy anything which is written
[302]
on Excel to deployment, but if you use Python,
[305]
you can straight away deploy that on production.
[307]
So that is another big plus for Python.
[311]
RAJAT: So compared to other programming
[313]
languages, Python is one of the simpler and
[317]
easier language to learn.
[319]
I actually started, I just started with
[323]
Python and picked it up on the
[325]
syntax within a day.
[326]
NEHA: For any language, I would say you
[328]
have to first go and read like, get yourself
[332]
familiar with the syntax, variables,
[334]
if condition, how to write a user
[337]
defined functions, for loops.
[338]
DHAVAL: Python community itself is
[340]
very big, so if you have any doubts,
[342]
you can just put that doubt on the
[344]
Internet and you will find that exact
[346]
question that you have, somebody
[347]
has already asked the exact same
[349]
question, it can be very complicated,
[351]
but somebody has already asked that
[352]
question and there are solutions to them.
[357]
GAURAV: The most important thing would be
[359]
to understand a Python or some kind of
[364]
a programming language that should allow
[366]
them to do the quantitative part of the trading
[370]
side and in addition to that, they would
[372]
also have to understand money management
[375]
and position taking.
[378]
DHAVAL: Well, if you want to learn
[383]
programming, I think rule #1 would
[385]
be take some projects first,
[386]
then start to build your knowledge around
[388]
that project and then build your programming skills.