Stock Trading App Tutorial [Part 00] - App Overview
Summary
TLDRIn this new series, the creator plans to transform a technical screener app into a full-stack Python application, complete with a database, alerts, and automated trading features. The project will span roughly 12 parts, with each video accompanied by a written tutorial on the website. Topics will cover database design, SQL queries, Python integration, job scheduling, web dashboard creation, technical indicators with alternative libraries like Tulip, user authentication, trading UI, alerts, notifications, and server configuration for deployment. The aim is to empower viewers to build their own hosted web applications by the end of the series.
Takeaways
- π The channel is starting a new series that will be the longest one ever, likely extending through the end of the month.
- π The creator is working on improving their writing skills to provide full written tutorials for each video in the series.
- π» They have been developing the website further and setting up a WordPress instance to support the tutorial content.
- π’ The series is planned to be roughly 12 parts, focusing on enhancing a technical screener app into a full-stack Python application.
- π The app will include more features like deployment, database usage, alerts, notifications, and automatic trading capabilities.
- π The tutorial will cover topics such as deploying the app on a cloud service like AWS for continuous operation and notifications.
- π Articles will be posted on the website alongside each video, allowing viewers to follow along in written form and copy code snippets.
- π The series will revisit a previously built technical screener web app and expand its functionality.
- ποΈ The first few videos will focus on database design and SQL, including migrating from CSV files to a relational database for easier management.
- π οΈ Subsequent parts will delve into job scheduling, building a web dashboard, applying technical indicators, and user authentication.
- π² The series will also explore setting up alerts and notifications, and automating trades based on technical settings.
Q & A
What is the main focus of the new series the speaker is starting?
-The new series will focus on developing a full-stack Python application by enhancing a technical screener app with more features and sophistication, including deployment, database setup, alerts, notifications, and automatic trading capabilities.
What is the speaker's plan for providing tutorials along with the video series?
-The speaker plans to create a full written tutorial for every video in the series, which will be posted on the website alongside each video, allowing viewers to follow along in written form and copy and paste code snippets.
How many parts does the speaker anticipate the series to have?
-The speaker anticipates the series to have roughly 12 parts, as per the current plan.
What is the first topic the speaker will cover in the series?
-The first topic to be covered is database design and the process of porting CSV files into a relational database for easier management.
How does the speaker plan to handle the updating of data in the application?
-The speaker plans to discuss job scheduling to automate the process of updating data. This will involve using Python scripts with cron jobs or Windows Scheduler to automatically fetch new price data and keep the database up to date.
What will the web dashboard front end allow users to do?
-The web dashboard front end will allow users to browse price data, click around, drill down to specific symbols, apply multiple indicators, and have a more sophisticated user interface with improved layout and color.
How does the speaker plan to incorporate technical indicators into the application?
-The speaker plans to use a SQL database instead of CSV files and will discuss how to use Pandas with SQL to query the database and return data into a Pandas DataFrame for analysis with technical indicators.
What library might the speaker use for technical screening instead of TA-Lib?
-The speaker is considering using the Tulip Indicators library for technical screening, as it offers a wider range of indicators and may be more compatible with different operating systems.
What authentication features does the speaker plan to implement in the web application?
-The speaker plans to implement user authentication to allow users to save preferences, screens, indicators, or settings tied to their user account, and also to secure the application for real trading functionalities.
How does the speaker intend to handle alerts and notifications within the application?
-The speaker intends to set up alerts and notifications based on user account settings, which could involve sending email reports or SMS messages using services like Twilio when certain patterns or thresholds are met.
What server configurations does the speaker have experience with and will discuss?
-The speaker has experience with virtual servers on Linode or DigitalOcean and has run a web application on Linux for over a decade. They will discuss how to get the application online using these platforms.
What is the speaker's vision for the future content of the channel?
-The speaker envisions creating a polished, advanced course that builds upon the content from the channel, which would be a comprehensive guide to Python for traders, potentially offered on a platform like Teachable in the future.
Outlines
π Introduction to a New Series and Website Tutorials
The speaker introduces a new series that will be the longest one ever, taking through the end of the month to record. They plan to provide a full written tutorial for every video, which involves improving their writing skills and setting up a WordPress instance. The series will consist of approximately 12 parts, focusing on enhancing a technical screener app into a full-stack Python application. The app will include deployment, database usage, alerts, notifications, and automatic trading. The speaker also mentions deploying the app on a cloud service like AWS for continuous operation and notifications upon pattern detection. They invite viewers to check the website for articles accompanying each video, allowing for written follow-along and code snippets.
π οΈ Expanding Technical Screener App with Full Stack Features
The speaker outlines the direction of the channel for the next few weeks, which includes revisiting a previously built technical screener web app and transforming it into a full-stack Python application. They plan to add more features such as database integration, job scheduling for data updates, a web dashboard for browsing price data, and applying multiple technical indicators. The speaker also intends to explore different technical analysis libraries, considering alternatives to TA-Lib, such as Tulip Indicators, for more sophisticated technical screening. They will also cover user authentication to allow users to save preferences and potentially incorporate real trading. Additionally, they will discuss alerts, notifications, and automated trading based on user settings, as well as server configuration and deployment to create a set-and-forget system.
π Website Development and Future Course Considerations
The speaker discusses the ongoing development of their website, including plans to build an email list and potentially create a polished course on Python for traders, which they may offer on platforms like Teachable in the future. They express gratitude to those who have donated via their 'Buy Me a Coffee' page and consider the possibility of setting up GitHub sponsors for recurring contributions. The speaker emphasizes their intention to continue providing free content while also considering ways to monetize more comprehensive educational materials. They also mention the possibility of using a Raspberry Pi as a small server in the future.
π Conclusion and Call to Action for the Upcoming Series
The speaker concludes by summarizing the direction of the channel for the rest of October, which will involve continuous posting of articles and videos related to building a web application from scratch. They encourage viewers to follow along, sign up for the email list, and consider making a donation if they find value in the content. The speaker aims to empower viewers to potentially have their own hosted web application by the end of the month, marking a significant achievement and outcome of the series.
Mindmap
Keywords
π‘Full Stack Python Application
π‘Technical Screener App
π‘SQL
π‘Database Design
π‘Job Scheduling
π‘Web Dashboard
π‘Technical Indicators
π‘User Authentication
π‘Automated Trading
π‘Deployment
Highlights
Starting a new series that will be the longest one ever, likely to take through the end of the month to finish recording.
Full written tutorial for every single video in the series.
Improving writing skills for creating comprehensive tutorials.
Developing the website with a WordPress instance for tutorial integration.
Series will consist of roughly 12 parts.
Revising a technical screener app to a full-stack Python application with additional features.
Deployment of the application using a cloud service like AWS for continuous operation.
Incorporating database usage, alerts, notifications, and automatic trading into the application.
Providing articles on the website alongside each video for those who prefer written form.
Building a technical screener web app with a web interface listing candlestick patterns.
Using CSV files and pandas data frames for technical indicators and pattern detection.
Introduction of database design and SQL for managing data more efficiently.
Teaching SQL queries for data selection, aggregation, and specific date ranges.
Integrating Python with SQL for dynamic database interactions.
Scheduling programs with cron or Windows Scheduler for automatic data updates.
Developing a web dashboard for browsing and analyzing price data.
Transitioning from using CSV files to a SQL database for technical indicators.
Exploring alternative libraries to TA-Lib for technical screening.
Incorporating user authentication for personalized user experiences and secure trading.
Adding trading UI for manual trades and automation based on user settings.
Setting up alerts and notifications for intraday and end-of-day trading activities.
Automating trades based on technical settings for a hands-off trading system.
Discussing server configuration and deployment for hosting the web application.
Considering creating a polished course on building advanced applications for a fee.
Building an email list for updates and potential course offerings.
Expressing gratitude for donations and considering options for recurring contributions.
Transcripts
hey welcome back today i'm going to be
starting a new series and it's going to
be the longest one
ever it's probably going to take through
the end of the month
to finish recording all the videos for
it and so i'm going to give you a quick
overview of the direction we're going
with the channel for the next few weeks
so number one i started working on the
website a bit
and for this series there's going to be
a full written tutorial for
every single video so i've been working
on my writing skills the past couple
weeks since
they've gotten pretty rusty i haven't
written any programming articles in a
long time so i've started
working on this so i've developed the
website out a little more and set up
a wordpress instance and so there's
going to be
a series of videos it's going to be
roughly 12 parts that's how i have it
planned out
uh so far and so what i'm going to be
doing is revisiting
uh this technical screener app but
adding a lot more bells and whistles
and turning it into a full-blown you
know full stack python application
and talking about how to make this
application uh more
sophisticated both in the fact that
we'll deploy it but also we'll use a
database we'll set up some alerts and
notifications
have some automatic trading and things
like that so um yeah there was a
question down here on this one that said
how do you deploy it
and so we could use a cloud like aws let
run forever in the background
and once it detects a desired pattern it
sends out a notification
so we're going to talk about some topics
like that in this tutorial
and so keep an eye out on the website
i'm going to be posting articles
along with each video so that if you
want to follow along in written form
and copy and paste snippets of code you
can do that as well
so that's one of my goals to build out
the website a little more so if you
remember a couple of months ago i
created a tutorial video on building
a technical screener web app so we built
this web interface
we listed all the candlestick patterns
in talib we made a scan button to detect
these patterns it would go through
all the csv files and load them into
pandas data frames and apply technical
indicators
and then spit out all these charts and
whether the bearish or bullish
pattern was detected looks like a lot of
bearish candlestick
bearish engulfing patterns uh the last
couple days or the
as of friday so um yeah so that's how
this is working now
um and i committed all of the csv files
that's generated to
the github repository but you'll notice
um yeah that's that becomes a little
unmanageable over time
so we have like all these csv files
right for every single symbol
so um i'm going to this
whole series is going to start off with
a few videos on database design
and sql so the first video the one i'll
be recording now
is going to be about database design and
porting csv files these flat files
into a relational database so that
it's a little easier to manage like so
if a stock symbol changes
names or once gets de-listed and we
delete it you know we don't have to
find the file and delete it managing
hundreds of files like that
isn't necessarily the best idea
especially if you're running a
multi-user
web application so secondly we'll talk a
little bit about sql queries
so i'll show you how to select data
slice and dice it
aggregate it calculate sums all in sql
and also select very specific uh date
ranges so if you're interested
in just the last week or splitting up
your
historical data into different times
time
frames we can use sql to select only the
data we need rather than reading in
entire files next we'll talk about
python and sql so i'm going to show you
the intro to sql on the command line
just so you know how to write sql
queries
if you're unfamiliar if you already do
or you can
if you know any of these topics actually
you can skip ahead but uh the third
video is going to be on python sql so
getting those sql queries
having python execute those um and
dynamically
um filling our database so we're going
to hit all of those
yahoo finance endpoints to get market
data but then we're going to use python
to execute all these queries
to insert all these rows in a nice
relational database
after that if we have our data in a
great format we're going to talk about
job scheduling so
a while back when i built that web
application i just snapchated all the
data up to august or so but you know
it's october now so we need to keep
that data up to date so i want to talk
about scheduling programs to run
so python scripts to run with cron or
windows scheduler if you're using
windows
and to automatically get new price data
without us doing anything
and keep a data set up to date a
database up to date
right so that's job scheduling once we
have all the data and it's continuously
up to date
we'll build a web dashboard front end to
it so we'll have
this nice web interface that we can
browse the price
data click around drill down to specific
symbols
um apply multiple indicators that sort
of thing so we'll make this
uh ui a little more sophisticated maybe
add some color
some good layout make it a little nicer
right
after we have a web dashboard we want to
apply our technical indicators
uh previously i use ta lib against
uh these csv files right we loaded csv
files into a data frame but
now that we're not going to use csv
files we're going to use a sql database
i'm going to talk to
talk about how to use pandas with sql so
to query a relational database
and return that data into a pandas data
frame
for further analysis right which leads
into part seven
technical screening so uh we want to use
our library so we used talib before i
thought we might try something else some
people mentioned they have problems with
ta lib on windows
or and you know there's other libraries
out there so i don't want to make this
all about ta lib when when we're using
technical analysis library so
i thought we'll probably try this tulip
indicator so try that out maybe this
will be
more handy to us so we'll do a tutorial
on tulip
this tulip indicators library okay and
we'll use that for
some technical screening and we'll do
more technical screening than just these
patterns
i will try to incorporate some of these
other
indicators that are listed looks like
tulip indicators has 104 indicators now
so uh yeah let's let's try to use more
of those
in this example so we'll create a few
drop downs and maybe allow some
numeric inputs and so forth to
screen maybe find some more powerful
signals than what we focused on
in the past after that i'm going to talk
about users and authentication
so since we're going to be deploying a
web application to an actual server
that's out there in the world we want to
lock it down right
it's fine to just do a read-only
application and not have user
authentication
if it's just going to be you know this
scanner and we want
anyone to use it any anonymous person to
use it that's fine but in this case i
want to go a little bit further in this
tutorial and actually
have some authentication that way the
user
can have some preferences so the user
would be you in this case
and maybe you could go in and say save
some screens to your account
right or save some indicators or
settings that you're interested
in and it can be tied to your user
account and also
we can incorporate some actual real
trading
and if we want to let something trade
our account right we want to
make sure we verify that the person uh
giving it permission is actually who
they say they are
right okay and then after that we'll
once we have it
the ability to lock it down we'll add a
trick a little bit of trading
ui so maybe here on the side here um
you'll be able to actually
you know click some buttons and make
some trades based on this uh screen so
some manual trades
but then also we will do some automation
right
so in part 10 11 we'll do some alerts
and notifications so maybe you'll be
able to
save a setting to your user account that
says notify me
when a certain pattern hits or a certain
threshold is hit
on some technical indicator right and so
we could just send an email report
at the end of the day so we'll talk
about how to send email from python but
also how you could probably send
sms using twilio or to a special email
address
that will actually forward it to an sms
text message
so uh we'll talk about how to do that
and also uh yeah so that could be like
an end of the end of the day
thing that happens uh using our job
scheduler right we can scan for whatever
your account settings are and then send
some emails with a list of trades and
maybe you can take action from your
but also um yeah maybe we want to do
something intraday so do some more real
time
where we snapshot things every few
minutes or check on the candles every
five minutes
and then maybe send an email emails and
notifications
intraday in addition to that we might
want to say
uh when a condition happens not only is
in the email but maybe certain ones
we want to automatically place trades
for them we don't want to have to
intervene and so let's talk about
automating some trades
based on our technical settings and just
having this whole system be where we can
just kind of set it and forget it once
we configure
our user preferences one time and then
finally once we have this
all set up like we want i want to talk a
little bit more about server
configuration
and deployment so how this site goes
onto a server
and even configure a domain so we could
have like mytradingsite.com
and configure that and have this all
running and this kind of set and forget
system or something where we can go
you know check on you know our own
little trading dashboard right and so
yeah let's talk about how to build a
full stack uh web application
and i'm going to show you for servers
i'm going to focus on a couple of
different server setups i like
i actually usually use a virtual server
on lynode or digitalocean the website
here
is on digitalocean um and so the
discussion board in this blog
but also i have client sites and other
sites that run on linux i have had
a web application for a client running
for over 10 years now on linux so i
trust that
quite a bit as well because i've never
really managed it very much so
these are cheap options they're only
like five bucks a month i think you get
a ton of free credits too
so i'm gonna talk about how to actually
get uh your application online
okay um yeah so be on the lookout
all these will appear as articles and
i'm going to go through them in order
and you can follow along if you want to
copy snippets of code
and then all this will be searchable by
google which looks nice i want to make
a little bit more of an effort going
forward on the website and building this
up the other thing i've added to the
website is a place to put your email
address i know i've
talked about doing this in an old video
about building up an email list so i'm
getting to that point now
where i would like to do this and so if
you want to receive
some notifications on updates to the
site and articles
and also i'm starting to think about
putting all this into a longer form
course this is actually going to be
fairly long 12
12 parts here this is actually in a
course in itself i'm doing you know this
absolutely free
but i'm starting to think in terms of
building a very sophisticated
series of applications and from scratch
starting at the beginning of everything
we've learned on this channel and
building up
over time into a really polished course
format which i would actually charge
money for
and put on uh teachable is what i'm
thinking as the platform
and so if you're interested in something
like that then leave your email address
and you'll get an email whenever it's
ready this is something that won't
happen until next year
it's going to take me a long time to
really write all this out like i want it
i have this
vision in my head of what a good python
for traders course
would look like and i want to fully
write this out over the course of
six months to a year or something like
that it's gonna take me a long time
so uh there's that um yeah so blog posts
will appear here
and also um i will now mention donations
uh there's a buy me a coffee page that i
set up like a month ago
and people are using it and i want to
thank everyone again that's contributed
so far so this is just people have said
they want you they found values in the
videos and they wanted to donate five
bucks for instance
and so going back uh it's been a couple
weeks
so i want to thank all these people uh
taka who is
in japan thank you very much he's in to
go and python i'm
i do want to learn some go at some point
um it's getting very popular in the last
few years here
klaus thank you very much uh darius
walk sebastian i appreciate the
contribution
amit says don't comment that says don't
become an alcoholic thank you
i i won't i've i've learned the hard way
that's
a bad way to go uh parvender bought me
five drinks very generous i appreciate
it
uh he's looking for some help uh i don't
know if i'll have time
i'm getting a lot of inquiries lately
about you know debugging people's code
or
being a consultant and i just don't have
enough time in the day for now i want
to just do these videos in my spare time
when it's convenient
otherwise i tried to do some consulting
for a bit
and it just kind of burnt me out because
i already have a job and
lots of obligations and also like to
have a good time out on the town so
um i'm i don't want any extra deadlines
or
to owe anyone anything necessarily so
that's the reason i'm not doing a lot of
these consulting projects when people
ask about them uh mike thank you very
much i'm glad you found it
helpful for a td ameritrade and i do
want to get a raspberry pi
uh at some like actually i should
probably just order one they're like 50
bucks or something right
i'd like to play around with them as
like a little a small server to set up
somewhere
so that'd be very cool jose thank you
very much
ramahan um thank you
danielle williams appreciate it he asked
if i've considered setting up github
sponsors
and if they want a recurring
contribution i guess i could do that i
don't know
i didn't know if anyone would be
interested in recurring uh the reason i
chose
uh buying me a coffee instead of patreon
because i figured people might
just want to do a one-time five dollar
thing and not commit to some um
recurring contribution but maybe if
people want to do that
yeah maybe i'll add it to the github
we'll see
um yeah for now i think this is working
pretty well
um people contributing five dollars here
and there when they feel like it
and like i said i think if i want to
ask for more most of these things are
just gonna be free but if i wanted to
ask for more i think i should make a
really polished
uh course that's really well done that
shows you how to build something very
advanced
and it's gonna be like 40 over 40 hours
of content so
that's what i'll be working towards if i
want people to make
larger contributions i want to give
something big
um dan um yes i've emailed dan
um about this we'll see if we can get
that resolved
and uh gerson thank you very much as
well so
thanks to everyone that contributed i'll
leave a link below if anyone else
finds value in these videos and wants to
make a donation
uh it will be there under the donate
link
so yeah that's that's about it that's
where we're going with the channel
um this is 12 parts at least i haven't
even finished it yet
but it's outlined and that's what i'm
predicting right now and if so
i'm going to be this is going to be the
direction of the channel for the rest of
the month so for the rest of october
i'll continually post these articles
post a video
and you can follow along and at the end
of the month
maybe you'll have an entire web
application of your own hosted on a
server from scratch
which will be a really cool outcome so
uh follow along sign up for the email
list
make a donation and thanks a lot
everyone for watching let's go ahead and
get started
with building this project
Browse More Related Video
What is the MERN Stack?
Web Developer Roadmap (March 2024) - Everything is Changing
Introdução a bancos de dados SQLite com Python e módulo sqlite3
How I Would Learn Data Science in 2022
Generate C# Model from existing Microsoft SQL Server Database
1 Minute SCALPING STRATEGY Makes $100 Per Day (BUY/SELL Indicator)
5.0 / 5 (0 votes)