{"id":170,"date":"2026-02-19T15:05:41","date_gmt":"2026-02-19T15:05:41","guid":{"rendered":"https:\/\/www.aumarketwatch.com\/learn\/?p=170"},"modified":"2026-02-19T15:05:50","modified_gmt":"2026-02-19T15:05:50","slug":"10000-virtual-asx-trading-simulator","status":"publish","type":"post","link":"https:\/\/www.aumarketwatch.com\/learn\/10000-virtual-asx-trading-simulator\/","title":{"rendered":"$10,000 Virtual ASX Trading Simulator"},"content":{"rendered":"<h3>Welcome to the <a href=\"https:\/\/www.aumarketwatch.com\/\">AU Market Learning<\/a> Trading Simulator<\/h3>\n<p>You start with:<\/p>\n<p>\ud83d\udc49 <strong>$10,000 virtual capital<\/strong><br \/>\n\ud83d\udc49 4 ASX-style stocks<br \/>\n\ud83d\udc49 10 simulated trading days<br \/>\n\ud83d\udc49 Price volatility &amp; random market events<\/p>\n<p>Your goal:<\/p>\n<p>\u2714 Grow your portfolio<br \/>\n\u2714 Manage risk<br \/>\n\u2714 Survive volatility<br \/>\n\u2714 Finish with maximum portfolio value<\/p>\n<p>This simulator forces decision-making over multiple rounds, ensuring users spend several minutes actively trading.<\/p>\n<p><strong>\ud83c\udfae How It Works<\/strong><\/p>\n<ul>\n<li>Each round = 1 trading day<\/li>\n<li>Prices change randomly with volatility<\/li>\n<li>Random news events impact sectors<\/li>\n<li>You can Buy \/ Sell each day<\/li>\n<li>Game ends after 10 days<\/li>\n<li>Final performance summary shown<\/li>\n<\/ul>\n<div id=\"tradingSim\">\r\n  <h2>\ud83d\udcb0 $10,000 Virtual ASX Trading Simulator<\/h2>\r\n  <p>Trade over 10 simulated trading days. Grow your capital wisely.<\/p>\r\n\r\n  <div id=\"dashboard\">\r\n    <p><strong>Day:<\/strong> <span id=\"day\">1<\/span> \/ 10<\/p>\r\n    <p><strong>Cash:<\/strong> $<span id=\"cash\">10000<\/span><\/p>\r\n    <p><strong>Portfolio Value:<\/strong> $<span id=\"portfolioValue\">10000<\/span><\/p>\r\n  <\/div>\r\n\r\n  <div id=\"newsEvent\"><\/div>\r\n\r\n  <table border=\"1\" width=\"100%\" style=\"margin-top:10px;\">\r\n    <thead>\r\n      <tr>\r\n        <th>Stock<\/th>\r\n        <th>Price<\/th>\r\n        <th>Owned<\/th>\r\n        <th>Buy<\/th>\r\n        <th>Sell<\/th>\r\n      <\/tr>\r\n    <\/thead>\r\n    <tbody id=\"stockTable\"><\/tbody>\r\n  <\/table>\r\n\r\n  <button id=\"nextDayBtn\">Next Trading Day<\/button>\r\n  <button id=\"restartBtn\" style=\"display:none;\">Restart Game<\/button>\r\n\r\n  <p id=\"result\"><\/p>\r\n<\/div>\r\n\r\n<style>\r\n#tradingSim {\r\n  max-width: 900px;\r\n  margin: 20px auto;\r\n  padding: 20px;\r\n  font-family: Arial, sans-serif;\r\n  background: #f4f9ff;\r\n  border-radius: 10px;\r\n  box-shadow: 0 4px 12px rgba(0,0,0,0.1);\r\n}\r\n#newsEvent {\r\n  margin-top:10px;\r\n  font-weight:bold;\r\n  color:#d63384;\r\n}\r\nbutton {\r\n  margin-top: 10px;\r\n  padding: 8px 15px;\r\n  border: none;\r\n  border-radius: 5px;\r\n  background: #0073aa;\r\n  color: white;\r\n  cursor: pointer;\r\n}\r\nbutton:hover {\r\n  background: #005177;\r\n}\r\n<\/style>\r\n\r\n<script>\r\nlet day = 1;\r\nlet cash = 10000;\r\nlet stocks = [\r\n  { name: \"BHP (Materials)\", price: 45, owned: 0 },\r\n  { name: \"CBA (Financials)\", price: 100, owned: 0 },\r\n  { name: \"CSL (Healthcare)\", price: 250, owned: 0 },\r\n  { name: \"XRO (Technology)\", price: 120, owned: 0 }\r\n];\r\n\r\nconst newsEvents = [\r\n  { text: \"Mining boom! Materials +8%\", sector: \"Materials\", impact: 0.08 },\r\n  { text: \"Banking regulations tighten. Financials -6%\", sector: \"Financials\", impact: -0.06 },\r\n  { text: \"Healthcare breakthrough! +7%\", sector: \"Healthcare\", impact: 0.07 },\r\n  { text: \"Tech sell-off. Technology -9%\", sector: \"Technology\", impact: -0.09 },\r\n  { text: \"Calm market day. Normal volatility.\" }\r\n];\r\n\r\nfunction updateTable() {\r\n  const table = document.getElementById(\"stockTable\");\r\n  table.innerHTML = \"\";\r\n\r\n  stocks.forEach((stock, index) => {\r\n    const row = `\r\n      <tr>\r\n        <td>${stock.name}<\/td>\r\n        <td>$${stock.price.toFixed(2)}<\/td>\r\n        <td>${stock.owned}<\/td>\r\n        <td><button onclick=\"buyStock(${index})\">Buy<\/button><\/td>\r\n        <td><button onclick=\"sellStock(${index})\">Sell<\/button><\/td>\r\n      <\/tr>\r\n    `;\r\n    table.innerHTML += row;\r\n  });\r\n\r\n  document.getElementById(\"cash\").textContent = cash.toFixed(2);\r\n  updatePortfolioValue();\r\n}\r\n\r\nfunction updatePortfolioValue() {\r\n  let value = cash;\r\n  stocks.forEach(stock => {\r\n    value += stock.price * stock.owned;\r\n  });\r\n  document.getElementById(\"portfolioValue\").textContent = value.toFixed(2);\r\n}\r\n\r\nfunction buyStock(index) {\r\n  if (cash >= stocks[index].price) {\r\n    cash -= stocks[index].price;\r\n    stocks[index].owned++;\r\n    updateTable();\r\n  }\r\n}\r\n\r\nfunction sellStock(index) {\r\n  if (stocks[index].owned > 0) {\r\n    cash += stocks[index].price;\r\n    stocks[index].owned--;\r\n    updateTable();\r\n  }\r\n}\r\n\r\nfunction nextDay() {\r\n  if (day >= 10) return;\r\n\r\n  day++;\r\n  document.getElementById(\"day\").textContent = day;\r\n\r\n  let event = newsEvents[Math.floor(Math.random() * newsEvents.length)];\r\n  document.getElementById(\"newsEvent\").textContent = event.text || \"\";\r\n\r\n  stocks.forEach(stock => {\r\n    let volatility = (Math.random() - 0.5) * 0.1;\r\n    let change = volatility;\r\n\r\n    if (event.sector && stock.name.includes(event.sector)) {\r\n      change += event.impact;\r\n    }\r\n\r\n    stock.price *= (1 + change);\r\n    if (stock.price < 5) stock.price = 5;\r\n  });\r\n\r\n  updateTable();\r\n\r\n  if (day === 10) endGame();\r\n}\r\n\r\nfunction endGame() {\r\n  document.getElementById(\"nextDayBtn\").style.display = \"none\";\r\n  document.getElementById(\"restartBtn\").style.display = \"inline-block\";\r\n\r\n  let finalValue = parseFloat(document.getElementById(\"portfolioValue\").textContent);\r\n  let profit = finalValue - 10000;\r\n\r\n  if (profit > 0) {\r\n    document.getElementById(\"result\").textContent =\r\n      \"\ud83c\udfc6 Simulation Complete! Profit: $\" + profit.toFixed(2);\r\n  } else {\r\n    document.getElementById(\"result\").textContent =\r\n      \"\ud83d\udcc9 Simulation Complete! Loss: $\" + profit.toFixed(2);\r\n  }\r\n}\r\n\r\nfunction restartGame() {\r\n  day = 1;\r\n  cash = 10000;\r\n  stocks.forEach(stock => {\r\n    stock.owned = 0;\r\n    stock.price = Math.max(stock.price, 20);\r\n  });\r\n  document.getElementById(\"day\").textContent = day;\r\n  document.getElementById(\"nextDayBtn\").style.display = \"inline-block\";\r\n  document.getElementById(\"restartBtn\").style.display = \"none\";\r\n  document.getElementById(\"result\").textContent = \"\";\r\n  updateTable();\r\n}\r\n\r\ndocument.getElementById(\"nextDayBtn\").addEventListener(\"click\", nextDay);\r\ndocument.getElementById(\"restartBtn\").addEventListener(\"click\", restartGame);\r\n\r\nupdateTable();\r\n<\/script>\r\n\n","protected":false},"excerpt":{"rendered":"<p>Welcome to the AU Market Learning Trading Simulator You start with: \ud83d\udc49 $10,000 virtual capital \ud83d\udc49 4 ASX-style stocks \ud83d\udc49 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"elementor_theme","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"default","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"set","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[5],"tags":[],"class_list":["post-170","post","type-post","status-publish","format-standard","hentry","category-asx-share-market-games"],"_links":{"self":[{"href":"https:\/\/www.aumarketwatch.com\/learn\/wp-json\/wp\/v2\/posts\/170","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.aumarketwatch.com\/learn\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.aumarketwatch.com\/learn\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.aumarketwatch.com\/learn\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.aumarketwatch.com\/learn\/wp-json\/wp\/v2\/comments?post=170"}],"version-history":[{"count":0,"href":"https:\/\/www.aumarketwatch.com\/learn\/wp-json\/wp\/v2\/posts\/170\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.aumarketwatch.com\/learn\/wp-json\/wp\/v2\/media?parent=170"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.aumarketwatch.com\/learn\/wp-json\/wp\/v2\/categories?post=170"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.aumarketwatch.com\/learn\/wp-json\/wp\/v2\/tags?post=170"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}