<html>
<head>
<title>TradingView Charting Library demo</title>
<!-- Fix for iOS Safari zooming bug -->
<meta
name="viewport"
content="width=device-width,initial-scale=1.0,maximum-scale=1.0,minimum-scale=1.0"
/>
<script
type="text/javascript"
src="https://charting-library.tradingview-widget.com/charting_library/charting_library.standalone.js"
></script>
<script
type="text/javascript"
src="https://charting-library.tradingview-widget.com/datafeeds/udf/dist/bundle.js"
></script>
<script type="text/javascript" src="script.js"></script>
</head>
<body style="margin: 0px">
<div id="tv_chart_container"></div>
</body>
</html>
// Custom CSS properties
var customCSS = `div[data-name="list-item-title"] {text-transform: none;}`;
function initOnReady() {
const cssBlob = new Blob([customCSS], {
type: "text/css",
});
const cssBlobUrl = URL.createObjectURL(cssBlob);
class LowercaseDatafeed extends Datafeeds.UDFCompatibleDatafeed {
searchSymbols(userInput, exchange, symbolType, onResult) {
function lowercaseResult(results) {
const newResults = results.map(i => {
return {
i,
symbol: i.symbol?.toLowerCase(),
name: i.name?.toLowerCase(),
ticker: i.ticker?.toLowerCase(),
};
});
onResult(newResults);
}
super.searchSymbols(userInput, exchange, symbolType, lowercaseResult);
}
resolveSymbol(symbolName, onResolve, onError, extension) {
function lowercaseResult(info) {
info.name = info.name.toLowerCase();
info.ticker = info.ticker.toLowerCase();
onResolve(info);
}
super.resolveSymbol(symbolName, lowercaseResult, onError, extension);
}
}
var widget = (window.tvWidget = new TradingView.widget({
library_path:
"https://charting-library.tradingview-widget.com/charting_library/",
// debug: true, // uncomment this line to see Library errors and warnings in the console
fullscreen: true,
symbol: "AAPL",
interval: "1D",
container: "tv_chart_container",
datafeed: new LowercaseDatafeed(
"https://demo-feed-data.tradingview.com"
),
locale: "en",
disabled_features: ['uppercase_instrument_names'],
enabled_features: [],
custom_css_url: cssBlobUrl,
}));
}
window.addEventListener("DOMContentLoaded", initOnReady, false);
This Pen doesn't use any external CSS resources.
This Pen doesn't use any external JavaScript resources.