Futures
Access hundreds of perpetual contracts
TradFi
Gold
One platform for global traditional assets
Options
Hot
Trade European-style vanilla options
Unified Account
Maximize your capital efficiency
Demo Trading
Futures Kickoff
Get prepared for your futures trading
Futures Events
Join events to earn rewards
Demo Trading
Use virtual funds to experience risk-free trading
Launch
CandyDrop
Collect candies to earn airdrops
Launchpool
Quick staking, earn potential new tokens
HODLer Airdrop
Hold GT and get massive airdrops for free
Launchpad
Be early to the next big token project
Alpha Points
Trade on-chain assets and earn airdrops
Futures Points
Earn futures points and claim airdrop rewards
My core principles of alpha development are:
1) Iteration speed
2) Accessibility
What does this mean?
The first is fairly clear. If you test 10 alphas a day and everyone else tests 2 every day then you will do a lot better than everyone else.
How do you make that happen?
Well first, let's write off data scraping and pre-processing. If you dont have scripts to do this automatically you are already NGMI. This is table stakes.
Next, get a data loading library. You shouldnt have to rewrite that glob.glob(folder_path) etc etc code. You should use:
load_data(
start_date=start_date,
end_date=end_date,
symbol=symbol,
etc
)
Next, is research data. What is research data?
Well, you can start by having a universe. You shouldnt be taking time out to manually define a universe (and ideally it should be standardized anyways). So you should load in a file of the top X symbols by 30d volume or market cap or 30d liquidity or whatever you choose. You can really play around with this.
From here we can look at returns, we should have factor returns, idiosyncratic returns, clipped returns, and of course raw returns. ALL PREGENERATED!
Now, finally we need to make sure we can test all our alphas and the code to do it should be blazingly fast. You may think its only X minutes, but anything more than a few mins is a massive context switch and directly affects productivity.
We've covered iteration speed now lets do accessibility.
Accessibility is how easy it is to do a given analysis. Its the quality component of the quality vs quantity optimization problem. Say I want to do a seasonality analysis but I decide to skip it so I can do another alpha, that is a lack of accessibility. Say I decide not to do a correlation + residualization analysis because I want to test another alpha instead, thats a lack of accessibility.
Your tooling should allow you to do these common types of analysis rapidly. This applies to optimization, markouts, TCA, optimal TWAP, etc. All of this should ideally be minimal work for you to run because the more work it is to run the LESS YOU WILL RUN IT and the quality of your research will decrease.
Anyways to conclude, you should generally focus on making the core analysis faster and the extra analysis which improves the quality of your research significantly faster to do. By optimizing both of these you ensure you produce ultra high quality research significantly faster than everyone else.
This is your edge. If you do 5x as much as everyone else in the same time you can make significantly more PnL.