<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Ankit Kumar</title>
    <description>The latest articles on DEV Community by Ankit Kumar (@ankit02327).</description>
    <link>https://dev.to/ankit02327</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4143553%2F1a7a7386-df67-45a9-817e-2032186c81ae.jpg</url>
      <title>DEV Community: Ankit Kumar</title>
      <link>https://dev.to/ankit02327</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ankit02327"/>
    <language>en</language>
    <item>
      <title>I Built a Stock Price Prediction App While Learning ML — Here's What I Learned</title>
      <dc:creator>Ankit Kumar</dc:creator>
      <pubDate>Fri, 25 Sep 2026 21:38:36 +0000</pubDate>
      <link>https://dev.to/ankit02327/i-built-a-stock-price-prediction-app-while-learning-ml-heres-what-i-learned-19ho</link>
      <guid>https://dev.to/ankit02327/i-built-a-stock-price-prediction-app-while-learning-ml-heres-what-i-learned-19ho</guid>
      <description>&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; I built a full-stack stock prediction app with 7 ML algorithms, 1,001 stocks, and offline-first support. It's open source, and I'd love your feedback.&lt;/p&gt;

&lt;p&gt;🔗 &lt;strong&gt;&lt;a href="https://github.com/ankit02327/stock-price" rel="noopener noreferrer"&gt;github.com/ankit02327/stock-price&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;




&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fojz8ser1o8kkz2y1g99w.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fojz8ser1o8kkz2y1g99w.png" alt=" " width="800" height="1016"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  How It Started
&lt;/h2&gt;

&lt;p&gt;This project began from something I was personally learning: machine learning.&lt;/p&gt;

&lt;p&gt;While taking ML courses at university, I wanted to understand how the algorithms I was studying could be combined into a complete, practical application. That led me to build &lt;strong&gt;Stock Price Prediction&lt;/strong&gt; around a real-world problem instead of keeping the work inside individual coursework exercises.&lt;/p&gt;

&lt;p&gt;The educational purpose has remained central. I want someone learning machine learning to be able to look at a real application, understand how different models are used, work with real financial data, experiment with the code, and eventually build projects of their own.&lt;/p&gt;




&lt;h2&gt;
  
  
  What It Actually Does
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;7 ML algorithms:&lt;/strong&gt; Linear Regression, Decision Tree, Random Forest, SVM (basic models) + KNN, ARIMA, Autoencoder (advanced models)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;1,001 stocks:&lt;/strong&gt; 501 US + 500 Indian (936 used for training after filtering insufficient data)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Real-time data:&lt;/strong&gt; US stocks via Finnhub, Indian stocks via Upstox, with permanent offline storage fallback&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;5-year historical analysis:&lt;/strong&gt; Interactive charts with Recharts&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;38 technical indicators&lt;/strong&gt; calculated from historical data&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Currency conversion:&lt;/strong&gt; Automatic USD/INR conversion&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Smart training:&lt;/strong&gt; Percentage-based predictions with confidence scoring&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  The Tech Stack
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Layer&lt;/th&gt;
&lt;th&gt;Technology&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Backend&lt;/td&gt;
&lt;td&gt;Flask 2.3.3, Python 3.8+, TensorFlow 2.20, scikit-learn, statsmodels&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Frontend&lt;/td&gt;
&lt;td&gt;React 18, TypeScript, Vite, Tailwind CSS, Recharts&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;APIs&lt;/td&gt;
&lt;td&gt;Finnhub (US), Upstox (India), yfinance (historical)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  What Makes It Different: Offline-First
&lt;/h2&gt;

&lt;p&gt;The system works &lt;strong&gt;completely offline without any API keys&lt;/strong&gt;. This was a deliberate design choice — I wanted anyone to be able to clone the repo and start experimenting immediately, without signing up for API keys or worrying about rate limits.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What works offline:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Stock info for 1,001 stocks&lt;/li&gt;
&lt;li&gt;Complete 5-year historical charts (2020–2024)&lt;/li&gt;
&lt;li&gt;All trained ML models&lt;/li&gt;
&lt;li&gt;Full-text search&lt;/li&gt;
&lt;li&gt;38 technical indicators&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;What needs API keys:&lt;/strong&gt; Live prices only.&lt;/p&gt;




&lt;h2&gt;
  
  
  What I Learned
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Machine learning is not magic.&lt;/strong&gt; It finds patterns, but you need domain knowledge to make sense of them.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Data quality is everything.&lt;/strong&gt; Stock data is messy — splits, dividends, missing values. A robust preprocessing pipeline matters more than a fancy model.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Start simple, then iterate.&lt;/strong&gt; My first model was basic linear regression. It wasn't great, but it worked, and it gave me a foundation to build on.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Open source is a two-way street.&lt;/strong&gt; The project now has &lt;strong&gt;27 contributors&lt;/strong&gt; and &lt;strong&gt;14 releases&lt;/strong&gt;. I've learned as much from the community as from building it.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  What's Next
&lt;/h2&gt;

&lt;p&gt;I'm planning substantial improvements: FastAPI migration, Redis caching, PostgreSQL, Docker Compose, MLflow experiment tracking, news sentiment analysis, and a backtesting system.&lt;/p&gt;

&lt;p&gt;The project is still growing. I see its current US and Indian market coverage as a starting point rather than the final scope.&lt;/p&gt;




&lt;h2&gt;
  
  
  How You Can Help
&lt;/h2&gt;

&lt;p&gt;If this sounds interesting:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;⭐ &lt;strong&gt;Star the repo:&lt;/strong&gt; &lt;a href="https://github.com/ankit02327/stock-price" rel="noopener noreferrer"&gt;github.com/ankit02327/stock-price&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;🐛 &lt;strong&gt;Open an issue&lt;/strong&gt; if you find a bug&lt;/li&gt;
&lt;li&gt;🔧 &lt;strong&gt;Contribute&lt;/strong&gt; — there are "good first issue" labels for newcomers&lt;/li&gt;
&lt;li&gt;📣 &lt;strong&gt;Share it&lt;/strong&gt; with anyone learning ML&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Let's Connect
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;GitHub:&lt;/strong&gt; &lt;a href="https://github.com/ankit02327" rel="noopener noreferrer"&gt;@ankit02327&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;em&gt;Thanks for reading. If you're learning ML too, I'd love to hear what you're building.&lt;/em&gt;&lt;/p&gt;




</description>
      <category>learning</category>
      <category>machinelearning</category>
      <category>opensource</category>
      <category>showdev</category>
    </item>
  </channel>
</rss>
