Show HN: With a 9-5 job and 2 kids I have finally finished my first MVP

501 points by mrhichem ↗ HN
Hello HN crowd. I worked on this project on weekends and evenings. I'm excited I made it into a presentable MVP, and it is so satisfying.

I would like to get some honest feedback from this great community.

I made https://freeoptionscreener.com/, to scratch a personal itch. I myself trade options as a hobby, and I didn't find a screener that satisfies my need to be able to explore raw options data freely and without preset constraints. So I made this app that allows playing with options market data and extract interesting opportunities.

The techs used: - Laravel + Jquery + Mysql - Tradier API for market data - DigitalOcean for hosting - OVH for domain name

It costs me 5$/month to run the website. I'll be glade to continue if it proves to be a viable product in the long run and maybe I will take it to the next level and try monetize it. Note: the app is not suitable for phone screens yet, although this is a planned feature.

197 comments

[ 4.6 ms ] story [ 348 ms ] thread
I don't know anything about trading options but wanted to say with a 9-5 job and 2 kids, getting any kind of MVP out is a great accomplishment. Well done.
thank you for the kind words
Second this. It's not only intellectually draining, emotionally too. Great job.
I have a friend in a situation like this who will fall asleep while coding late at night and sleep few hours. I don’t know how you (and he) do it, but awesome!
And now we have companies saying "we're not a 9-5" and even companies with "996" schedule which basically means "we discriminate against people with kids"
Oh good grief, does 996 mean what I think it does?
It depends. How do you like to spend 72 hrs of your week?
9 am to 9 pm, 6 days a week. This is most prevalent in China though, with their somewhat lax labor laws, I have never seen this in the western world (codified into a number like 996 I mean, I assume investment banking and the like pull >100 hours a week).
(comment deleted)
Having interned a long time ago in such a company:

No check in time - just arrive anytime before 10.

Lunch break is easily 2 hours, naps included.

Dinner break is another 1.5 hours, people would walk laps and sometimes play basketball.

Everyone hang around until 9PM because then there's free food and free rides home (also traffic is much better). only applies for weekdays, some people check in on Saturdays for a few hours.

Of course this is not busy time in general - when people do the real 996 for a bit - but that can't last, and everyone knows it.

I've heard the situation has started to change as well - hopefully it gets fully stamped out.

This has anecdotally been described as US work ethic to me. Ostensibly long hours and few vacation days but if you need to run an important errand on company time nobody will bat an eye.
Add good quality child care / babysitting and I'll sign right now.
> This is most prevalent in China though, with their somewhat lax labor laws

Like a lot of things in China, the problem isn't with the laws but the selective enforcement of it. The labour law says:

> 36 The State shall practise a working hour system wherein labourers shall work for no more than eight hours a day and no more than 44 hours a week on an average.

There's also a widespread practice of making employees who have been with the company for more than 8 years or so quit and rejoin after a month to bypass some other labour law provision I don't fully understand.

And they call themselves "communists" with their somewhat capitalist lax labor laws. What an irony.
They are still adhering to Marxism. Capitalism is one step on the path. Next is socialism, then communism.
Well, the US and Europe call themselves capitalist, yet there are huge barriers to enter some of the fields (e.g. in the Czech Republic the number of mobile operators is defined by law, essentially a state-imposed oligopol). Useless regulations (primarily EU), trade embargos, huge subsidies to companies which don't need them, absurd patents (my favourite one being Apple patenting the shape of a rectangle with rounded corners)...

So now what?

Sadly although everyone knows this is simply a giant show to marginally make the bosses feel more at ease about the productivity, nobody has the guts to stand out and say this is just nonsense, such a waste of time.
Companies declaring 996 is good in a way -- helps you filter them out (or in) depending on your preference. I think companies pitching "work life balance" but not subscribing to it in reality are worse. Better to know the deal upfront.

FWIW, early in my career I would welcome 996 as long as it came with rewards. Now I prefer high intensity, constrained 9-6, but with high scale.

Unless in China, unfortunately, if people filter out "996" companies there are not many decent options left.

In reality, companies in tech sectors don't declare themselves as "996", because they're by default "996". Companies that work 40 hours per week would declare themselves as "965" or "955" because it's rare and attractive.

Let's have a glance at how bad it is:

As an example, the work schedules for "FANG" companies are relatively sane. The counterparts in China would be "BATJ" (Baidu, Alibaba, Tencent, JD), and Uber-like counterparts (Bytedance, Meituan, Didi), their work schedule all largely exceeded 40 hours. The worse of them all is Pinduoduo, the very successful competitor to Alibaba's Taobao, they work 13 days before they get one day off (6 days on one week and 7 days on the other).

It's even uglier if we dig down to the rabbit holes:

1. Job with lower pay doesn't mean less working time, it's often the opposite.

2. "996" doesn't mean it stops are 9 pm. If a recruiter is being "honest" and says they're a "996" company, be prepared to work till 11pm for most of the days, and over midnight sometimes.

3. More often than not, the salary package IS the amount people get. There is no extra pay for overworking. People are working overtime because the deadlines are ridiculous and they don't want to lose their job, because most jobs are the same anyway and they have to go through the fierce competition process again.

4. The most toxic one: overwork for nothing. The leader of the team wanted to show his/her competency to the boss by letting everybody just sit there and overwork, even though there's no real task to be done at all!

At the bottom line, there are still a few decent options that like Google and Microsoft in China, but the competition is even more fierce.

I have one response to all that.. fuck that noise.

On that basis I work 864, but I guess in China people are just another natural resource from which to extract value, once all the value is extracted (burned out) they dump that person and take the next one off the heap. Its a sad state of affairs that the Chinese think that this work ethic sets them apart from the rest of the world. It does in a way, but what it really allows is for the chinese government and chinese companies to make them work longer for less and to feel like they are special for doing so.

There is a reason that the west has labour/employment laws that protect people from this sort of exploitation. Sad to see that the chinese people have fallen for this sort of bullshit.

It's the sad irony of collectivism. When you remove all concept of individual ownership and accountability in the name of universal equality, you've effectively destroyed the individual as a unit and just turned them into another resource to be taken advantage of, nominally for the good of the whole, but in reality for the good of the ruling party.
Well let's not saddle up the high horse so quickly. The same sort of issues apply to the US where collectivism/socialism is certainly not the norm. There the individual is powerless in the face of corporations and they are similarly exploited, except now instead of the ruling party doing the exploitation it's the ultra rich who take advantage of the individual.
I don't think collectivism is at fault here. There are many places that are far more collectivist than the US but have extremely sane work schedules.

Germany comes to mind, in particular, as an example of how collectivism can actually help allow for sane work hours. I worked there for a few months. One of the things I deeply respected is that my co-workers were completely okay with the bakeries closing at 3:30pm, supermarkets closing at 6:30pm, being open for only 2 hours on Saturday, and completely closed on Sunday because "the supermarket employees also have families and need time to rest", words which you would almost never hear in the US. (In larger cities of Germany, supermarkets have longer hours, but rarely past 8pm or 9pm, and definitely never 24 hours like you often find in the US.)

What is at fault is rampant, extreme capitalism, which at that extreme milks humans of every last drop at the expense of their health, because their health is not a part of the financial optimization function at all. If you can profit by driving your employees to insanity, you profit, and that is deemed optimal by an extreme capitalist system.

(And before some social media flamewar-instigators accuse me of advocating for extreme communism, no, I'm advocating some balance between mostly captalism and some strong labor laws that everyone must abide by to maintain the physical and mental health of the country.)

Plot twist: his kids are all 20-year olds that learned to program, his 9-5 job is to teach/manage his kids to develop the MVP for him. ;)

Just kidding, OP. As someone exactly in your situation, congrats for shipping!

and his wife is the sucessful trader who hires him
The reality is probably that he has a lot of creative energy inside but by the time the kids, who are probably 3 and 5, are in bed and he's eaten his dinner and spent time with his SO, it's 8pm and he's shattered, but somehow, he's managing to pull what little energy is left and put it into his project.

And for that, I say kudos to him. It takes a lot.

8pm ?! By the time that the things you mention happen to me, SO, and 2 yr old for me it's more likely 11pm :/ Kudos to OP for pulling this out!
Too real, depends on the kids thou. Mine don’t want to sleep and by the time they fall asleep I have been already fallen asleep, woken up a few to accompany them to the bathroom or to fetch some snack as they are suddenly ravenously hungry… I guess there is not enough time to spend with my SO, or even less time for side projects at this time..
Came here to say exactly this. Great job! :)
This is great - I was trying to calculate option profit for something a few months ago and it was a huge pain using the free options I found on Google so I think this might have legs. Best of luck.
Congratulations on shipping.

It is no mean feat around a day job and a family.

Nice work getting over the hump!

How did you balance the responsibilities of being a parent, especially in terms of the endless chores, and the time commitment to make this happen?
I always put work on my project second behind being parent and husband. I sometimes wakeup early before staring my job. sometimes late nigh before going to bed after my kids sleep. Working from home covid policies also helped reducing commute time. I made small but contineous progress each day.
This is far and away the most encouraging part: that you pulled off an ambitious goal while still keeping your priorities family-aligned. As someone with two very young, very closely spaced kids & ambitions to build something, I needed to see this. Thank you.
I have no idea what any of the site means!

But, I’d love to know you found time, I’m years behind on personal projects, 2 young kids as well - genuinely interested in how you made it work, I’m just shattered by the end of the day!

Upvote from me because if you can ship a useful tool whilst managing a family life then go you! Gratz!

Nice.. I've java program somewhere that draws the profit and loss over time and price with color code for profit/loss. (price on y , time on x). Can be a nice feature to have. my 2c
Indeed. can be useful. Have this feature down on the features backlog.
First of all: congrats on shipping, not an easy feat.

Constructive criticism: I had no idea what this site was about until I spent a minute looking around.. and now I only _think_ I get.

Granted I am (probably) not your target market, however I think maybe a landing page or at least a popup tutorial - which I can then "Skip" at my peril would be a smart addition.

Counter point: as someone who plays with trading options as a hobby I instantly knew what this is!
Yep same here. I usually agree with the whole "your grandmother should get it" but don't think that applies here.
Same (but spent the last 4 years trading options as my main hobby)
I also didn't get it, however I only trade options once in a while. I don't know whether they should put a tutorial/about section, but I'd love to know what this is for, if anyone would care to shed some light.
There's loads of other places to learn about options trading, e.g. /r/thetagang. I echo the other commenter, I understood instantly what the purpose of this site is. A comparable site is optionsprofitcalculator.com which also has only a brief introduction.
Congrats.

Interface-wise, what a lot of people do now when facing a large number of filtering or sorting options is they collapse them and provide a summary with a filter button to pop them back out. This may reduce visual clutter. The description field information is also 100% redundant. Strike and other price columns should have a currency symbol. It is conventional to use either decimal point vertical alignment or right-alignment with fixed-width fonts when displaying numbers in series. Do not underestimate the value of color for comparing figures, eg. high vs. low volume or interest.

Some kind of clickable action to purchase brokerage via third party services for which you can obtain referral kickbacks might generate revenue.

very valuable feedback. thanks a lot
Congrats! Looks really interesting, I do see a few data issue e.g. NVDA Sep 17 2021 $405.00 Put NVDA(Stock) put 726.44 405 321.44(44%) 2021-09-17(61d) 2 3 0.98 1.29 0.0000 0.0000 0.0000 0.0000 2.000

Have you looked into https://optionstrat.com/

thank you for spotting this issue. And for the link, definitely useful.
Going a bit off-topic here, but I can't be the only one who doesn't know what these numbers mean... So, what do these numbers mean?

NVidia? Sep 17 2021? $405? (Current price appears to be 220.68)

Also I can't find NVDA anywhere on the page right now. Tried to fiddle with various options without really knowing what I'm doing. Is it gone now?

first off set the top left expiration to "ANY" (for ease of use to find results easier), then search the ticker symbol at the bottom right.

Nvidia in your example would be the underlying equity that the options derivative contract is based on

sept 17 2021 is the expiration date of the contract

405 is the strike which is the price at which the contract allows you to buy or sell (depending on if the options contract is a Call or Put contract)

Before I've even checked it out: Congrats on shipping!!!! I know how hard it is to get something done with the constraints of a day job & family.

I read SO many comments on here from folks lamenting their lack of energy + time to do something like this despite the desire to do so. So 10000 congrats on pushing through and getting something live.

Now to actually check it out (and I'll come back and update this comment with actual feedback ;)

thanks. looking forward for the feedback.
I love your stack choice. Simple boring and obviously very functional.
Cool site, and congrats for shipping!

Some minor nitpicks:

1. I filtered to ITM but got options that were out of the money in my results

2. Rather than needing the 10,30,50,any moneyness picker, why not a slider?

3. In fact, there should probably be a slider for Delta… it’s really difficult to find options that are near or at the money since sorting by delta either starts at 1 or 0

4. I didnt see a CSV export button anywhere?

Overall nice job though!

[edited for spacing]

very valuable feedback. A slider for delta is my next feature to implement. But afraid of too many sliders that might be confusing.

You can sort by ITM/OTM column to find near or at the money options.

The CSV also is something I should add.

If you had a delta filter I would never use the ITM/OTM setting. It is useful to have the % ITM/OTM in the output, but not as a filter, for my use case.

In case it helps, my normal filter is something like:

- Type: PUT

- Days to expiration: 20 - 40

- Delta: -.30 - -.20

- Open interest: >100

- Premium: >$1

- Underlying price: >$50

- IV: 10% - 30%

That gives me a range of out-of-the-moneyness I'm looking for, but I don't care what the absolute % is.

I appreciate a lot your feedback.
I like the numbers inside slider thumbs, haven't seen that one before! Otherwise not qualified to comment on functionality
"With a 9-5 job and 2 kids I have finally finished my first MVP ...

I worked on this project on weekends and evenings."

I can't wait until my kid is old enough that I can really work on stuff when watching them on nights and weekends.

I cant wait until my 2 kids are old enough that they can also commit code to our shared project. One seems to have a predilection for it.
That does sound kind of nice. If it's a hobby that could be good. I would be concerned about it turning into a profession for them, because for me it's been nothing but disappointment and stress. I'd rather work with them on physical projects, like carpentry or leather working.
I read the title as though achieving a 9-5 job and having 2 kids was the MVP. I like that interpretation as well :)
Using color to describe information ranges is an excellent way to add a passive dimension of information, and allow people to screen out inferior choices.

"Dimming" the entire screen on a choice change is extremely visually distracting. A small spinner on the data sheet would be an excellent indicator that "this data is about to change".

Excellent tool, I'm going to play around with it tonight.

feedback like this is the reason I love this community. definitly considering going by your remark
Can I contribute to your repo? I know only Scala but I have need of more features like OI, volumes, etc and backtests to find UOA. you can reach me at eamocanu on GitHub or gmail
What are OI and UOA?
Open Interest and Unusual Options Activity
Backtesting would require historical data - it looks like this project may only have access to live data?
Yes. backtesting is such a complexe tool. I usually use Tastworks for backtesting after filtering out some instruments with a screener.
Looks good! Small typo, Open Intereset -> Open Interest :)
oh my god.thank you for spotting it. will fix this right away
Nice work!

I was looking for a way to screen for unusual option volume (Volume noticeably above Open Interest), but didn't see a way to do that directly. I do see the filters for Volume and Open Interest, and I can play with those in various combinations to see what I want, but I think something like a single filter that allowed viewing all contracts where Volume > Open Interest would address this in a more direct way.

p.s. I know the level of commitment required to launch an MVP, and to grow and support thereafter. I had a job at the time, and it was a lot to juggle. I don't think I could have done it if I also had a family. I wish you the best of luck moving this forward!

Love this! Minor nit: days to expiry for expiring tomorrow shows (2) and presumably (1) for options expiring today. I think usually this is denoted 1 and 0 (DTE)
Former hedge fund trader here: this is correct.
Do you mean that options expiring today should have a DTE equals 0 ?
[criticism not allowed]
This negative comment got me thinking about why I liked the original post so much.

The URL of the product itself very clearly tells us what the product is (at least, if you are in the target audience)

So many web apps have inscrutable names. This is just refreshingly clear, it's a free option screener .com!

Cool project!

Not to hijack your thread but I want to leave some thoughts as a former vol trader.

Anyone trading options more than lottery tickets should really invest time into learning about BSM/greeks and some more advanced options structures and vol strategies.

For instance, if you paper traded a delta neutral book simulating a market maker, you’d understand how options pinning works (it’s not manipulation, it’s a side effect).

> For instance, if you paper traded a delta neutral book simulating a market maker, you’d understand how options pinning works (it’s not manipulation, it’s a side effect).

Great comment. With added apologies for hijacking, is there any resource you'd recommend with nuggets like the above? Is there any better way to learn than slowly paper trading and testing different things over long time spans? I'm interested in vol trading and dispersion strategies, but the lack of easily available historical data makes it difficult to run experiments.

I've seen entire careers and departments devoted to collecting this data for the purposes of backtesting strats.

You could start collecting it starting today, but you wouldnt have a huge back-test and it wouldnt reflect different regimes. It would regardless start giving you insights.

I'd guess the best ways to learn it are either doing it and learning bits over time, or joining a hedge fund where you get it all as common infra and learn there.

I'm also curious if anyone has ideas here. I havent seen a non-internal historical dataset.

> I've seen entire careers and departments devoted to collecting this data for the purposes of backtesting strats.

Very true. The best quant shops don’t have the smartest people, they have the most data and the best systems. Everyone has smart people. Not everyone has great infra.

There is no better way than doing. It’s not slow. These things will hit you like a freight train. You either get vol or you don’t. For me, the first month of running my own options book taught me more than all my derivs/vol classes in school combined.

You can read about convexity until you’re blue in the face, but you won’t really get it until you watch the interaction of every leg in your book and the resulting risk/pnl. Once you see that, it’s like ascending to a higher plane.

Much appreciated! Talking out loud, as you obviously know all this:

> You either get vol or you don’t.

I think I get it, on a conceptual level -- option prices include the market's expectation of future underlying variance, so if you subtract/hedge-out everything else, you can trade that fluctuating expectation. With dispersion, you're taking advantage of index options and those of the components eventually converging, while being mindful of the changing correlation of components.

> you won’t really get it until you watch the interaction of every leg in your book and the resulting risk/pnl. Once you see that, it’s like ascending to a higher plane.

You're spot on. I can tell I'm missing something "clicking" at a more intuitive level in my head, something that feels close, because my book almost does what I expect, but.. there's always some "error" in the pnl at the end of the week. So I must be missing an "aha" moment.

> There is no better way than doing. It’s not slow.

My "real job" skills (C/C++, numerical programming, systems engineering) I only learned by doing, I guess no reason to expect this would be any different! Though, I can easily write and test code on my laptop with no consequences if it's wrong. I feel like I'd learn fast if I could set up a trade experiment, click a button, and then see how it fared at the end of the week, immediately, instead of waiting the week. I've got dozens of questions I think would be answered quickly that way.

But you're right, the path to learn more is clear, I'm gonna start paper trading those experiments.

Thanks for your comment, it's really encouraging. I can't wait for Monday.

> my book almost does what I expect, but.. there's always some "error" in the pnl at the end of the week. So I must be missing an "aha" moment

Depends what that thing is, but most likely you're not. If your pnl/risk expectations have the correct direction, and rough magnitude, I would say you're doing pretty well.

What sort of strat/structures are you wearing at the moment?

I don't have idea what it is. But first, congrats! I immediately open this thread after reading the title. Having 9to5 job and kids (2!), it is truly hard making time, even you make it to finish the MVP. Applause!

- I spot a typo on the About description, should be opportunities. - Email us to contact@go2.broker? - I'm not sure why expiration date 2021-08-27 has 2d

Thanks for spotting the typos. for the dates It was mentioned in some comments earlier. It depends on whether to count the current day in the DTE calculation. It is something to fix
I suggest using Black Box Stocks system for a while to learn what works well for them. (They make a killing, but the main value for many members is in their Discord).