Index: backend/src/main/java/com/tradingmk/backend/model/Stock.java
===================================================================
--- backend/src/main/java/com/tradingmk/backend/model/Stock.java	(revision a54ce1bf9280ce2724cffdf99677f26967910fff)
+++ backend/src/main/java/com/tradingmk/backend/model/Stock.java	(revision 9992135daa8fd66f4a39bc828f9971d02e14ecb4)
@@ -19,4 +19,25 @@
     private Double currentPrice;
     private LocalDateTime lastUpdated;
+
+    @Column(nullable = false)
+    private Double percentage = 0.0;
+
+    private Double turnover;
+
+    public Double getTurnover() {
+        return turnover;
+    }
+
+    public void setTurnover(Double turnover) {
+        this.turnover = turnover;
+    }
+
+    public Double getPercentage() {
+        return percentage;
+    }
+
+    public void setPercentage(Double percentage) {
+        this.percentage = percentage;
+    }
 
     public Long getId() {
Index: backend/src/main/java/com/tradingmk/backend/service/StockService.java
===================================================================
--- backend/src/main/java/com/tradingmk/backend/service/StockService.java	(revision a54ce1bf9280ce2724cffdf99677f26967910fff)
+++ backend/src/main/java/com/tradingmk/backend/service/StockService.java	(revision 9992135daa8fd66f4a39bc828f9971d02e14ecb4)
@@ -9,4 +9,7 @@
 import java.time.LocalDateTime;
 import java.util.List;
+import java.util.Optional;
+
+
 
 @Service
@@ -21,13 +24,22 @@
 
     public void updateStockPrices(List<Stock> stocks) {
-        for (Stock newStock : stocks) {
-            stockRepository.findBySymbol(newStock.getSymbol()).ifPresentOrElse(existing -> {
-                existing.setCurrentPrice(newStock.getCurrentPrice());
-                existing.setLastUpdated(LocalDateTime.now());
-                stockRepository.save(existing);
-            }, () -> {
-                newStock.setLastUpdated(LocalDateTime.now());
-                stockRepository.save(newStock);
-            });
+        for (Stock incoming : stocks) {
+            Optional<Stock> existing = stockRepository.findBySymbol(incoming.getSymbol());
+
+            if (existing.isPresent()) {
+                Stock stock = existing.get();
+                stock.setCurrentPrice(incoming.getCurrentPrice());
+                stock.setName(incoming.getName());
+                stock.setLastUpdated(LocalDateTime.now());
+                if (incoming.getPercentage() == null) {
+                    incoming.setPercentage(0.0);
+                }
+                stock.setPercentage(incoming.getPercentage());
+                stock.setTurnover(incoming.getTurnover());
+                stockRepository.save(stock);
+            } else {
+                incoming.setLastUpdated(LocalDateTime.now());
+                stockRepository.save(incoming);
+            }
         }
     }
