I am sharing this with my experience and this is for retail investors. According to my experience , top 3 stock brokers are :
Zerodha is best due to technical superiority,clean UI, lowest brokrages. Pros:
lowest brokrages – zero brokrage for delivery . Huge savings
Easy interface.. Anyone will love it. Clean,organized and beautiful
Good intraday margin for quality stocks
Nice Backoffice Admin
On volatile days, system slows , login errors and some client report unexpected trade executions
Slower response to customer query.
No margin on cash-n-carry delivery trades
Upstox is replicating zerodha model. Backoffice is not just good as Zerodha. Two noticable advantages on Upstox compared to zerodha is –
Upstox started providing 2x margin on delivery trades at rate of 20/50000 excess margin utilized.
API trading and historical data cost is cheaper than zerodha. API trade through upstox is 850 vs 2000 of zerodha. Similar historical data api is 550 vs 2000 of zerodha.
Both upstox and zerodha calculate same day squareoff trades as intraday. This is saving for both. Trader have to pay less transaction tax(STT) and Brokers earn some brokrages( as their delivery model is zero brokrage). Here brokrage is huge savings .
Samco is for long term quality traders. Samco brokrage is bit higher but with Samco Plus, you get upto 4x margin on selected stocks. You need to pay interest on extra margin utilized but in most cases, it is favor of you. Samco earn interest and more brokrage. You can buy more stocks in multi-legged strategy. With investment of re 50000, buy reliance worth 200000 and upon a simple per stock profit of 50, you can earn 4000 ( simple calculation ) with investment of just 50000 and it is without huge risk . You can buy stocks at 1300 and mamage free fall upto 1100 with any worries. When price will move upward after 15-30 days, still income is good. Samco for long term trading.
from psycopg2.extras import RealDictCursor
from datetime import date
connection = psycopg2.connect(user = "root",
password = "password",
host = "localhost",
port = "5432",
database = "database")
cursor = connection.cursor(cursor_factory=RealDictCursor)
cursor.execute("""select * from table where date(created_at)=%s order by id desc limit 100""",(date.today(),))
First you need to import required module.For postgres database access,psycopg2 is latest and recommended modue. RealDictCursor is required to get data in proper dictinary form otherwise data will arrive without column name( hard to guess for wide tables).
Create a connection object with defined connection string. Prepare query. Execute it with a cursor and fetch result from cursor . Fetching and selections will be discussed in later series.
You can start with it. Use the data to apply different types of visualization or draw useful conclusions using python,postgres,pandas and python visualization library