Inspiration

Cha-Ching! Money! Money and Money! Well in my experience as a data scientist (or should I say "code and number crunching wizard"?) I've witnessed the phenomenon that in e-commerce we tend to spend most of our times to study the people who use our apps aka customer. We develop clickstream analysis, we conduct market basket, segmentation, predict the customer lifetime value, but sometimes we forget that pricing strategy also play crucial roles in e-commerce. Imagine that we have a little price-hiking ninja that sneaks into our store and increase the price when demand is high, ensuring we rake in the cash. Ka-ching! Would it be ideal right? Not only that, it can also be treated as inventory juggling act and profit margin steroids.

What it does

It works like a mystical dance where we gracefully twirl between maximazing profits and satisfying customers and crystal all that reveals desire and preferences. What's the different we made? We employed Pareto model (BG/NBD) to study prior distribution for the whole dataset. By employing BTYD (Buy Till You Die Model) aka Beta Geometric- Negative Binomial Distribution (BG-NBD) and Thompson resampling (RL) technique, this dynamic-pricing platform will study the customer order pattern and pricing of each category. Sellers can record their historical transactions and stated their budget constraint thus our platform will study and update its believe up to N trials or iteration. By the end of iteration, the platform will show us the rate of the price that bring the optimal return to our company.

How we built it

As we mentioned, we employed dynamic-pricing model on demand based. For that, we use e-commerce historical data from Kaggle as demo due to data limitation. Next we conduct some experimentation on model we use, we tried various model from statistical one to greedy algorithms such as Random Forest. But, in the end we decide to proceed our model with Thompson resampling as it works as Multibandit algorithm which usually used in reinforcement learning problem. There is some minor adjustment we made which is we use BG/NBD to find the prior alpha and beta for gamma model that will be assigned to Thompson resampling. Next, we deploy it to streamlit as report platform.

Challenges we ran into

The first challenge we face that to decide which way we want to build the analysis. Dynamic pricing heavily relies on accurate and up-to-date data to make informed pricing decisions. However, gathering and analyzing relevant data can be a complex and resource-intensive process. For that our platform is limited to historical (demand based) data only. Second, we know that Square is a popular e-commerce platform that provides a range of services for online businesses, including payment processing, inventory management, and customer analytics. However, for somebody who just getting started on it, there is some challenges we face on grasping and learning the platform's technical intricacies such as integrating Square's dynamic pricing capabilities into an existing e-commerce infrastructure requires a thorough the APIs, SDKs, and developer documentation. It might take time and effort for us to become proficient in leveraging Square's features effectively.

Accomplishments that we're proud of

Despite the challenges we face, the enjoyment of brainstorming about which thing to build (even though my team mate can't join me till the end of submission) pay off the effort. We also take immense pride in our journey of learning and adapting to new technologies and platforms, particularly when it comes to integrating Square into our dynamic pricing strategy.

What we learned

Bandid-algorithm, price-elasticity demand, time management and of course the Square Developer .

What's next for Awesome Dynamic Pricing

Real time data such as sentiment, shock, macroeconomics factors, embedding and many more to come.

Built With

Share this project:

Updates