{"id":141911,"date":"2026-07-20T03:03:03","date_gmt":"2026-07-20T01:03:03","guid":{"rendered":"https:\/\/news.abusizz.ch\/china-aktien-warum-profis-wieder-einsteigen-und-welche-fonds-jetzt-potenzial-haben\/"},"modified":"2026-07-20T03:03:03","modified_gmt":"2026-07-20T01:03:03","slug":"china-aktien-warum-profis-wieder-einsteigen-und-welche-fonds-jetzt-potenzial-haben","status":"publish","type":"post","link":"https:\/\/news.abusizz.ch\/de\/china-aktien-warum-profis-wieder-einsteigen-und-welche-fonds-jetzt-potenzial-haben\/","title":{"rendered":"China Aktien: Warum Profis wieder einsteigen \u2013 und welche Fonds jetzt Potenzial haben"},"content":{"rendered":"<div>\n<div id=\"attachment_89697\" style=\"width: 410px\" class=\"wp-caption alignleft\">\n<p id=\"caption-attachment-89697\" class=\"wp-caption-text\">Der historische Bewertungsabschlag chinesischer Aktien gegen\u00fcber westlichen M\u00e4rkten bietet antizyklischen Investoren eine seltene Chance auf substanzstarke Marktf\u00fchrer. (Bild: Magnific AI)<\/p>\n<\/div>\n<p>Die zweitgr\u00f6\u00dfte Volkswirtschaft der Welt gilt an der B\u00f6rse noch immer als Problemfall. Doch genau das k\u00f6nnte f\u00fcr Anleger zur gr\u00f6\u00dften Chance der kommenden Jahre werden. Warum chinesische Aktien historisch g\u00fcnstig bewertet sind, weshalb antizyklische Investoren jetzt genauer hinschauen sollten und welche Fonds und ETFs profitieren.<\/p>\n<h3>Gehasst, g\u00fcnstig \u2013 und vielleicht genau deshalb spannend<\/h3>\n<p>Es gibt B\u00f6rsenweisheiten, die erstaunlich gut altern. Eine davon lautet: Die beste Rendite entsteht selten dort, wo sich Anleger am wohlsten f\u00fchlen. Wer H\u00f6chstpreise bezahlt, kauft meist Hoffnung. Wer dagegen in ungeliebte M\u00e4rkte investiert, kauft h\u00e4ufig Substanz \u2013 vorausgesetzt, die Probleme sind kleiner als ihr Ruf. Genau in diese Kategorie f\u00e4llt heute China.<\/p>\n<p>Kaum ein Aktienmarkt wurde in den vergangenen Jahren so konsequent abgestraft. W\u00e4hrend die US-B\u00f6rsen von Rekord zu Rekord eilten und der KI-Boom die Bewertungen der gro\u00dfen Technologiekonzerne in neue H\u00f6hen trieb, geriet China immer weiter ins Abseits. Internationale Investoren zogen Milliarden ab, zahlreiche Fonds wurden verkauft und viele Anleger strichen das Reich der Mitte komplett aus ihren Depots.<\/p>\n<p>Die Gr\u00fcnde sind bekannt: eine historische Immobilienkrise, schwacher Konsum, regulatorische Eingriffe Pekings, der Handelskonflikt mit den USA und die zunehmenden Spannungen um Taiwan. Hinzu kam ein massiver Vertrauensverlust. Als die chinesische Regierung den B\u00f6rsengang der Ant Group in letzter Minute stoppte und anschlie\u00dfend den Technologiesektor sch\u00e4rfer regulierte, wurde internationalen Investoren schmerzhaft bewusst, dass politische Entscheidungen in China jederzeit wirtschaftliche Realit\u00e4ten ver\u00e4ndern k\u00f6nnen. Der Kapitalmarkt reagierte gnadenlos.<\/p>\n<h3>China ist billig \u2013 historisch billig<\/h3>\n<p>An der B\u00f6rse verlaufen Entwicklungen selten geradlinig. Genau die Faktoren, die Anleger \u00fcber Jahre abgeschreckt haben, schaffen heute eine ungew\u00f6hnlich attraktive Ausgangslage: China z\u00e4hlt inzwischen zu den g\u00fcnstigsten gro\u00dfen Aktienm\u00e4rkten der Welt.<\/p>\n<p>Das zeigt bereits der Blick auf die Bewertungen. Der MSCI China wird derzeit mit einem durchschnittlichen <a href=\"https:\/\/www.ftd.de\/boerse\/anlagestrategie\/kgv-bei-aktien-bedeutung-tuecken-und-grenzen-des-kurs-gewinn-verhaeltnisses\/\">Kurs-Gewinn-Verh\u00e4ltnis<\/a> (KGV) von rund 13 und einem Kurs-Buchwert-Verh\u00e4ltnis (KBV) von lediglich 1,59 gehandelt. Im Vergleich zum MSCI World entspricht das einem Bewertungsabschlag, der historisch nur selten zu beobachten war. Mit anderen Worten: Anleger zahlen f\u00fcr einen Dollar Unternehmensgewinn in China heute deutlich weniger als in den meisten westlichen Aktienm\u00e4rkten.<\/p>\n<p>Dabei bleibt China die zweitgr\u00f6\u00dfte Volkswirtschaft der Welt und geh\u00f6rt in zahlreichen Zukunftsbranchen l\u00e4ngst zu den globalen Taktgebern. Ob K\u00fcnstliche Intelligenz, <a href=\"https:\/\/www.ftd.de\/boerse\/exchange-traded-funds\/batterie-china-software-diese-etfs-machen-die-neue-autoindustrie-investierbar\/\" target=\"_blank\" rel=\"noopener\">Elektromobilit\u00e4t<\/a>, Batterietechnologie, Robotik oder Industrieautomation \u2013 chinesische Unternehmen spielen in vielen Schl\u00fcsselindustrien l\u00e4ngst in der ersten Liga.<\/p>\n<p>W\u00e4hrend sich die Aufmerksamkeit der Anleger fast ausschlie\u00dflich auf die amerikanischen Magnificent Seven richtet, entstehen in China Technologief\u00fchrer, deren operative Entwicklung durchaus mit westlichen Wettbewerbern mithalten kann \u2013 deren Bewertungen jedoch oft nur einen Bruchteil der US-Pendants betragen. Oder anders formuliert: In den USA kaufen Anleger vor allem Zukunftsfantasie. In China bekommen sie vielfach bestehende Marktf\u00fchrer \u2013 zum Preis des Misstrauens.<\/p>\n<h3>Der Preis des politischen Risikos<\/h3>\n<p>Der Bewertungsabschlag kommt allerdings nicht von ungef\u00e4hr. Wer in chinesische Aktien investiert, kauft nicht nur Unternehmen, sondern immer auch ein St\u00fcck Politik.<\/p>\n<p>Der Machtkampf zwischen Washington und Peking d\u00fcrfte die Kapitalm\u00e4rkte noch lange begleiten. Exportbeschr\u00e4nkungen, Sanktionen oder ein m\u00f6glicher Konflikt um Taiwan geh\u00f6ren ebenso zum Risikoprofil wie regulatorische Eingriffe der chinesischen Regierung, die Gesch\u00e4ftsmodelle und Unternehmensbewertungen innerhalb kurzer Zeit ver\u00e4ndern k\u00f6nnen. Hinzu kommen die Nachwirkungen der Immobilienkrise, die Konsum und Investitionen weiterhin belasten und die wirtschaftliche Erholung bremsen.<\/p>\n<p>China ist deshalb kein Markt f\u00fcr Anleger, die gr\u00f6\u00dftm\u00f6gliche Planungssicherheit suchen. Wer investiert, muss bereit sein, politische Risiken auszuhalten und st\u00e4rkere Kursschwankungen in Kauf zu nehmen. Genau darin liegt jedoch das Paradox: Weil viele Investoren diese Risiken scheuen, werden zahlreiche chinesische Qualit\u00e4tsunternehmen heute mit deutlichen Bewertungsabschl\u00e4gen gehandelt. Die Unsicherheit ist hoch \u2013 doch sie k\u00f6nnte l\u00e4ngst st\u00e4rker in den Kursen eingepreist sein als in den Unternehmensgewinnen.<\/p>\n<div data-elementor-type=\"section\" data-elementor-id=\"66052\" class=\"elementor elementor-66052\" data-elementor-post-type=\"elementor_library\">\n<section class=\"elementor-section elementor-top-section elementor-element elementor-element-329e521 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"329e521\" data-element_type=\"section\" data-e-type=\"section\">\n<div class=\"elementor-container elementor-column-gap-default\">\n<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-d5ce7cd\" data-id=\"d5ce7cd\" data-element_type=\"column\" data-e-type=\"column\">\n<div class=\"elementor-widget-wrap elementor-element-populated\">\n<section class=\"elementor-section elementor-inner-section elementor-element elementor-element-1ae567f elementor-reverse-mobile elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"1ae567f\" data-element_type=\"section\" data-e-type=\"section\" data-settings='{\"background_background\":\"gradient\"}'>\n<div class=\"elementor-container elementor-column-gap-default\">\n<div class=\"elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-99f564a\" data-id=\"99f564a\" data-element_type=\"column\" data-e-type=\"column\">\n<div class=\"elementor-widget-wrap elementor-element-populated\">\n<div class=\"elementor-element elementor-element-fdcd32f elementor-widget elementor-widget-image\" data-id=\"fdcd32f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\"src=\"\" title=\"comdirect-logo\" alt=\"comdirect-logo\" loading=\"lazy\">\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-14abf6e\" data-id=\"14abf6e\" data-element_type=\"column\" data-e-type=\"column\">\n<div class=\"elementor-widget-wrap elementor-element-populated\">\n<div class=\"elementor-element elementor-element-c446c65 elementor-absolute elementor-widget elementor-widget-text-editor\" data-id=\"c446c65\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings='{\"_position\":\"absolute\"}' data-widget_type=\"text-editor.default\">\n<div class=\"elementor-widget-container\">\n<p style=\"font-size: 12px; color: #999999; text-align: center;\">Anzeige<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"elementor-element elementor-element-61031b6 elementor-widget elementor-widget-heading\" data-id=\"61031b6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n<div class=\"elementor-widget-container\">\n<h4 class=\"elementor-heading-title elementor-size-default\">ETFs &amp; Aktien einfach kaufen. <span style=\"color: #216CAD\">Beim Testsieger.<\/span><\/h4>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"elementor-element elementor-element-064cf94 elementor-widget elementor-widget-text-editor\" data-id=\"064cf94\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n<div class=\"elementor-widget-container\">\n<p class=\"sc-ERObt iaSbiG\">Deutschlands bestes Online-Depot.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"elementor-element elementor-element-235f1d2 elementor-icon-list--layout-traditional elementor-list-item-link-full_width elementor-widget elementor-widget-icon-list\" data-id=\"235f1d2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon-list.default\">\n<div class=\"elementor-widget-container\">\n<ul class=\"elementor-icon-list-items\">\n<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\"><br \/>\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span><br \/>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">+240 kostenlose ETF-Sparpl\u00e4ne<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\"><br \/>\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span><br \/>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">3,90\u20ac Ordergeb\u00fchren pro Kauf<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n<li class=\"elementor-icon-list-item\">\n\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-icon\"><br \/>\n\t\t\t\t\t\t\t<i aria-hidden=\"true\" class=\"far fa-circle\"><\/i>\t\t\t\t\t\t<\/span><br \/>\n\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-icon-list-text\">Durch die BaFin reguliert<\/span>\n\t\t\t\t\t\t\t\t\t<\/li>\n<\/ul><\/div>\n<\/p><\/div>\n<div class=\"elementor-element elementor-element-526ff37 elementor-widget elementor-widget-html\" data-id=\"526ff37\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n<div class=\"elementor-widget-container\">\n<div class=\"button-container\">\n        <a class=\"box-affiliate\" href=\"https:\/\/www.ftd.de\/go\/comdirect-depot\/\/\" target=\"_blank\">Zur comdirect*<\/a>\n    <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/section><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/section><\/div>\n<h3>Warum sich das Blatt drehen k\u00f6nnte<\/h3>\n<p>Denn unter der Oberfl\u00e4che hat sich einiges ver\u00e4ndert. Mit der sogenannten \u201eAnti-Involution\u201c-Kampagne versucht Peking, den ruin\u00f6sen Wettbewerb einzud\u00e4mmen und die Profitabilit\u00e4t der Unternehmen zu st\u00e4rken. Gleichzeitig kaufen chinesische Unternehmen inzwischen mehr eigene Aktien zur\u00fcck, als sie neu ausgeben \u2013 ein deutlicher Wandel hin zu einer aktion\u00e4rsfreundlicheren Kapitalpolitik.<\/p>\n<p>Auch operativ pr\u00e4sentiert sich das Bild robuster als h\u00e4ufig angenommen. Die Exportwirtschaft l\u00e4uft stabil, zahlreiche Technologieunternehmen erwirtschaften hohe Cashflows und in Bereichen wie Halbleiter, Automatisierung oder K\u00fcnstliche Intelligenz entstehen nationale Champions, die l\u00e4ngst international konkurrenzf\u00e4hig sind. Kurz gesagt: Die Unternehmensrealit\u00e4t entwickelt sich vielerorts besser als das B\u00f6rsenimage.<\/p>\n<h3>Peter Huber: \u201eZu Unrecht so g\u00fcnstig\u201c<\/h3>\n<p>F\u00fcr Peter Huber, Fondsmanager bei Taunus Trust, klaffen B\u00f6rsenbewertung und wirtschaftliche Realit\u00e4t in China derzeit so weit auseinander wie selten zuvor. Aus seiner Sicht hat der Markt die Risiken inzwischen deutlich st\u00e4rker eingepreist als die Chancen.<\/p>\n<blockquote>\n<p>\u201eChinesische Aktien erscheinen besser dazustehen als ihr Ruf. Besonders bei f\u00fchrenden Plattformen wie Tencent, Alibaba oder Baidu wirkt der Bewertungsabschlag gegen\u00fcber ihren amerikanischen Wettbewerbern inzwischen \u00fcbertrieben.\u201c<\/p>\n<\/blockquote>\n<p>Tats\u00e4chlich werden viele chinesische Marktf\u00fchrer mit deutlich niedrigeren Bewertungsmultiplikatoren gehandelt als vergleichbare US-Konzerne \u2013 obwohl sie weiterhin hohe Cashflows erwirtschaften und in ihren jeweiligen M\u00e4rkten eine dominierende Stellung einnehmen. Genau deshalb setzt Taunus Trust in den antizyklischen Strategien TT Contrarian Flexible und TT Contrarian Global gezielt auf ausgew\u00e4hlte chinesische Technologiewerte.<\/p>\n<p>Von einer blinden China-Wette will Huber dennoch nichts wissen.<\/p>\n<blockquote>\n<p>\u201eDie geopolitischen Risiken sind real. Deshalb bleiben chinesische Aktien in unseren Portfolios bewusst auf einen mittleren einstelligen Prozentanteil begrenzt.\u201c<\/p>\n<\/blockquote>\n<p>Genau darin liegt die eigentliche Botschaft. China ist kein Markt f\u00fcr sorglose Buy-and-Hold-Investoren und auch kein Ersatz f\u00fcr amerikanische Technologieaktien. Doch wer bereit ist, politische Risiken auszuhalten, findet heute Bewertungen, die in den westlichen Industriel\u00e4ndern kaum noch zu finden sind. Der Preis f\u00fcr das Misstrauen k\u00f6nnte sich langfristig als attraktive Einstiegsgelegenheit erweisen.<\/p>\n<h3>3 Investments f\u00fcr das Comeback Chinas<\/h3>\n<h4>Matthews Asia China Innovators Fund \u2013 Die heimlichen Gewinner der Hightech-Revolution<\/h4>\n<p>Wer bei China sofort an Alibaba, Tencent oder BYD denkt, d\u00fcrfte vom <a href=\"https:\/\/www.matthewsasia.com\/funds\/mutual-funds\/single-country\/china-innovators-fund\/\" target=\"_blank\" rel=\"noopener\">Matthews Asia China Innovators Fund<\/a> (ISIN: LU0721876364) \u00fcberrascht werden. Fondsmanagerin Tiffany Hsiao sucht bewusst nicht nach den bekannten B\u00f6rsenstars, sondern nach den Unternehmen, die im Hintergrund den technologischen Wandel Chinas vorantreiben. Statt auf die Mega-Caps setzt sie auf innovative Small und Mid Caps \u2013 oft Marktf\u00fchrer in Nischen, die au\u00dferhalb Asiens kaum jemand kennt.<\/p>\n<h5>Hidden Champions statt Internetgiganten<\/h5>\n<p>Dass dieser Ansatz funktionieren kann, zeigt die j\u00fcngste Entwicklung eindrucksvoll. Seit Jahresbeginn 2026 legte der Matthews Asia China Innovators Fund rund 52 Prozent zu, auf Sicht von 12 Monaten betr\u00e4gt das Plus sogar mehr als 70 Prozent. Damit geh\u00f6rt der Fonds zu den erfolgreichsten China-Strategien des laufenden Jahres.<\/p>\n<p>Mindestens 65 Prozent des Verm\u00f6gens investiert Hsiao in chinesische Unternehmen, die sich durch technologische Innovationen, neue Gesch\u00e4ftsmodelle oder strukturelle Wettbewerbsvorteile auszeichnen. Statt den gro\u00dfen Indizes hinterherzulaufen, setzt sie auf konzentriertes Stock-Picking und h\u00e4lt lediglich rund 40 bis 60 Titel im Portfolio.<\/p>\n<p>Die gr\u00f6\u00dften Positionen verdeutlichen diesen Ansatz. Jiangsu Boqian New Materials entwickelt Spezialmaterialien f\u00fcr die Halbleiterindustrie und profitiert vom weltweiten Ausbau der Chipproduktion. Hongfa Technology z\u00e4hlt zu den f\u00fchrenden Herstellern von Relais und Schalttechnik \u2013 Schl\u00fcsselkomponenten f\u00fcr Elektrofahrzeuge, Industrieautomation und Energietechnik. Kingboard Laminates produziert hochwertige Leiterplattenmaterialien und liefert damit eine unverzichtbare Grundlage f\u00fcr moderne Elektronik.<\/p>\n<p>\u00a0<\/p>\n<div class=\"chartwrapper\" id=\"chartwrapper\" data-chartid=\"6a5c59d9b8947\"><\/div>\n<p>    <script id=\"tvChartLoader\" async src=\"https:\/\/unpkg.com\/lightweight-charts@4.2.0\/dist\/lightweight-charts.standalone.production.js\"><\/script><\/p>\n<p>    <script id=\"declarations\">\n    var chartid = \"6a5c59d9b8947\";\n    function renderTV(kursData, chartData,companyName,currency, chartHeight, chartWidth, code, exchange, kursDate, hidetitle, hidelegend, chartid) {      \n    \tconsole.log(\"render chart with id\", document.querySelector(`[data-chartid=\"${chartid}\"]`));\n        let width = chartWidth?chartWidth:600;\n        let ratio = 2\n        let height = chartHeight?chartHeight:(width\/ratio);\n        document.querySelector(`[data-chartid=\"${chartid}\"]`).style.height = chartHeight +50\n        document.querySelector(`[data-chartid=\"${chartid}\"]`).style.width = chartWidth<\/p>\n<p>        \/\/ formatter for x achis dates\n        function customXAchsisFormetter(timePoint, tickMarkType, locale) {\n            let formatOptions = {};\n            const date = new Date(timePoint);<\/p>\n<p>            if(tickMarkType <=1){\n                formatOptions = {day: \"numeric\", month: \"short\",year: \"numeric\",}\n\n            }else{\n                formatOptions = {day: \"numeric\", month: \"short\",year: \"numeric\",}\n            }\n            \/\/ from given date we should use only as UTC date or timestamp\n            \/\/ but to format as locale date we can convert UTC date to local date\n            const localDateFromUtc = new Date(\n                date.getUTCFullYear(),\n                date.getUTCMonth(),\n                date.getUTCDate()\n            );\n\n            return localDateFromUtc.toLocaleString(locale, formatOptions);\n        }\n\n        \/\/create buttons\n        function createSimpleSwitcher(items, activeItem, activeItemChangedCallback) {\n            var switcherElement = document.createElement(\"div\");\n            switcherElement.classList.add(\"switcher\");\n\n            var intervalElements = items.map(function (item) {\n                var itemEl = document.createElement(\"button\");\n                itemEl.innerText = item;\n                itemEl.classList.add(\"switcher-item\");\n                itemEl.classList.toggle(\"switcher-active-item\", item === activeItem);\n                itemEl.addEventListener(\"click\", function () {\n                    onItemClicked(item);\n                });\n                switcherElement.appendChild(itemEl);\n                return itemEl;\n            });\n\n            function onItemClicked(item) {\n                if (item === activeItem) {\n                    return;\n                }\n\n                intervalElements.forEach(function (element, index) {\n                    element.classList.toggle(\"switcher-active-item\", items[index] === item);\n                });\n\n                activeItem = item;\n\n                activeItemChangedCallback(item);\n            }\n\n            return switcherElement;\n        }\n        \/\/ loading: true or false\n        function handleAsyncUI(loading){\n            var IntervalButtons = document.getElementsByClassName(\"switcher-item\");\n             for(var i = 0; i < IntervalButtons.length; i++){\n                IntervalButtons[i].disabled = loading;\n             } \n             var chart = document.getElementsByClassName(\"tv-lightweight-charts\")[0];\n             if(loading){\n            \n            chart.style[\"display\"] = \"flex\"\n            chart.style[\"align-items\"] = \"center\"\n            chart.style[\"justify-content\"] = \"center\"\n\n            var loadingIndicator = document.createElement(\"div\");\n            loadingIndicator.classList.add(\"loader\");\n            \/\/loadingIndicator.innerText = \"Loading\";\n            loadingIndicator.id =\"loadingIndicator\"\n            chart.appendChild(loadingIndicator);\n             }else{\n            document.getElementById(\"loadingIndicator\").remove();\n            chart.style[\"display\"] = null\n            chart.style[\"align-items\"] =null\n            chart.style[\"justify-content\"] = null\n             }\n\n        }\n        var intervals = [\"1M\",\"3M\",\"6M\",\"1Y\",\"3Y\",\"5Y\"];\n        var seriesesData = new Map([\n            [\"1M\", []], \/\/ 1m (interval daten?), 3m, 6m, 1y, 3y, 5y\n            [\"3M\", []],\n            [\"6M\", []],\n            [\"1Y\", chartData],\n            [\"3Y\", []],\n            [\"5Y\", []],\n        ]);\n        var switcherElement = createSimpleSwitcher(intervals, intervals[3], syncToInterval);\n        var chartElement = document.createElement(\"div\");\n        const chart = LightweightCharts.createChart(chartElement, {\n            width: width,\n            height: height,\n            rightPriceScale: {\n                scaleMargins: {\n                    top: 0.2,\n                    bottom: 0.2,\n                },\n                borderVisible: false,\n            },\n            timeScale: {\n                borderVisible: false,\n                lockVisibleTimeRangeOnResize: true,\n\n                rightOffset:1,\n                tickMarkFormatter:customXAchsisFormetter\n\n            },\n            grid: {\n                horzLines: {\n                    color: \"#eee\",\n                    visible: false,\n                },\n                vertLines: {\n                    color: \"#ffffff\",\n                },\n            },\n            crosshair: {\n                horzLine: {\n                    visible: false,\n                    labelVisible: false\n                },\n                vertLine: {\n                    visible: true,\n                    style: 0,\n                    width: 2,\n                    color: \"rgba(80, 50, 25, 0.1)\",\n                    labelVisible: false,\n                }\n            },\n            handleScroll: {\n                mouseWheel: false,\n                pressedMouseMove: false,\n                horzTouchDrag: false,\n                vertTouchDrag: false\n            },\n            handleScale: {\n                axisPressedMouseMove: false,\n                mouseWheel: false,\n                pinch: false,\n            },\n        });\n        var areaSeries = null;\n        var positionDIV = document.querySelector(`[data-chartid=\"${chartid}\"]`)\n        positionDIV.appendChild(chartElement);\n        positionDIV.appendChild(switcherElement);\n        function httpGetAsync(theUrl, callback) {\n            var xmlHttp = new XMLHttpRequest();\n            xmlHttp.onreadystatechange = function () {\n                if (xmlHttp.readyState == 4 &#038;&#038; xmlHttp.status == 200)\n                    callback(xmlHttp.responseText);\n            }\n            xmlHttp.open(\"GET\", theUrl, true); \/\/ true for asynchronous \n            xmlHttp.send(null);\n        }\n        function formatDate(date) {\n            \n            var month = \"\" + (date.getMonth()+1);\n            var day = \"\" + date.getDate();\n            var year = date.getFullYear();\n\n            if (month.length < 2) \n                month = \"0\" + month;\n            if (day.length < 2) \n                day = \"0\" + day;\n            return [year, month, day].join(\"-\");\n        }\n        function getTimeframe(interval){\n            let from = null;\n            let to = formatDate(new Date());\n            switch (interval) {\n                case \"1M\": from = formatDate(new Date(Date.now() - 31 * 24 * 60 * 60 * 1000)); break;\n                case \"3M\": from = formatDate(new Date(Date.now() - 93 * 24 * 60 * 60 * 1000)); break;\n                case \"6M\": from = formatDate(new Date(Date.now() - 186 * 24 * 60 * 60 * 1000)); break;\n                case \"1Y\": from = formatDate(new Date(Date.now() - 372 * 24 * 60 * 60 * 1000)); break;\n                case \"3Y\": from = formatDate(new Date(Date.now() - 1116 * 24 * 60 * 60 * 1000)); break;\n                case \"5Y\": from = formatDate(new Date(Date.now() - 1860 * 24 * 60 * 60 * 1000)); break;\n                default:from = formatDate(new Date(Date.now() - 372 * 24 * 60 * 60 * 1000));\n                \n                }\n            return {from:from, to:to}\n        }\t\n        \/\/ what happens on button click\n        function syncToInterval(interval) {\n            if (areaSeries &#038;&#038; seriesesData.get(interval).length <=0) {\n                console.log(\"GETTING REMOTE DATA\")\n\n                chart.removeSeries(areaSeries);\n                areaSeries = null;\n                let apiToken = \"za1j116n2273ab1vxukuh6\"\n                let timeframe = getTimeframe(interval)\n                let filter = \"adjusted_close\"\n                handleAsyncUI(true)\t\t\t\t\t\t\n                httpGetAsync(\"https:\/\/api.leeway.tech\/api\/v1\/public\/historicalquotes\/\"+encodeURIComponent(code+\".\"+exchange)+\"?apitoken=\"+apiToken+\"&#038;filter=\"+filter+\"&#038;from=\"+timeframe.from+\"&#038;to=\"+timeframe.to, function (res) {\t\n                    let newData = []\n                    newData = JSON.parse(res)\/\/.map(el=>newData.push({time:el.date, value:el.close}))\n                    \/\/ newData = newData.map(el=>{\n                    \/\/     console.log(el.time.year)\n                    \/\/     console.log(el.time.month)\n                    \/\/     console.log(el.time.day)\n                    \/\/     console.log(el)\n                    \/\/     console.log(new Date(el.time.year, el.time.month-1, el.time.day));\n                    \/\/     return{value:el.value, time:el.time, timestamp:new Date(el.time.year, el.time.month-1, el.time.day).getTime()}})\n                    console.log(\"newData\")\n                    console.log(newData)\n                    seriesesData.set(interval, newData)\n                    areaSeries = chart.addAreaSeries({\n                        topColor: \"rgba(33, 108, 173, 0.56)\",\n                        bottomColor: \"rgba(33, 108, 173, 0.04)\",\n                        lineColor: \"rgba(33, 108, 173, 1)\",\n                    lineWidth: 2,\n                });\n                kursData = seriesesData.get(interval)[seriesesData.get(interval).length-1].value\n                areaSeries.setData(seriesesData.get(interval));\n                chart.timeScale().fitContent();\n                handleAsyncUI(false)\t\n                    })\n            }else{\n                console.log(\"GETTING LOADED DATA\")\n                if(areaSeries){\n                    console.log(\"DELETING  LOADED DATA FROM CHART\")\n                    chart.removeSeries(areaSeries);\n                    areaSeries = null;\n                }\n                kursData = seriesesData.get(interval)[seriesesData.get(interval).length-1].value\n                areaSeries = chart.addAreaSeries({\n                topColor: \"rgba(33, 108, 173, 0.56)\",\n                bottomColor: \"rgba(33, 108, 173, 0.04)\",\n                lineColor: \"rgba(33, 108, 173, 1)\",\n                lineWidth: 2,\n            });\n            areaSeries.setData(seriesesData.get(interval));<\/p>\n<p>            chart.timeScale().fitContent();\n            }<\/p>\n<p>        }\n        \/\/ data interval at startup\n        syncToInterval(intervals[3]);\n        \/\/ Name and Kurs as Text in legend<\/p>\n<p>        var watermark = document.createElement(\"img\")\n        watermark.classList.add(\"watermark\")\n        watermark.setAttribute(\"src\", \"https:\/\/api.leeway.tech\/leeway-sign.png\")\n        var testA = document.querySelector(`[data-chartid=\"${chartid}\"]`)\n        var testB = document.querySelector(`[data-chartid=\"${chartid}\"]`).getBoundingClientRect();\n        var test =  testA.getElementsByTagName(\"canvas\")[0].getBoundingClientRect();\n        watermark.style.position = \"absolute\";\n        watermark.style.width = \"90px\";\n        watermark.style.height = \"30px\";\n        watermark.style.display = \"block\";\n        \/\/watermark.style.z-index = \"1000000\";\n        watermark.style.bottom = \"0\";\n        watermark.style.right = \"10px\";<\/p>\n<p>        let linkLW = document.createElement(\"a\")\n        linkLW.href=\"https:\/\/www.ftd.de\/leeway-tech\";\n        linkLW.target = \"_blank\";\n        linkLW.appendChild(watermark)\n        \/\/ append to DOM<\/p>\n<p>        \/\/div-chartwrapper -> div -> div ->  table  -> tr ->  td td -> div\n        const myElementA = document.querySelector(`[data-chartid=\"${chartid}\"]`);\n        let myElementB = myElementA.childNodes[0]\n        let myElementC = myElementB.childNodes[0]\n        let myElementD = myElementC.childNodes[0]\n        let myElementE = myElementD.childNodes[0]\n        let myElementF = myElementE.childNodes[1]\n        let myElementG = myElementF.childNodes[0]\n        myElementG.appendChild(linkLW);<\/p>\n<p>        if(hidelegend == \"false\"){\n            console.log(\"SHOW LEGEND!\")\n            var legend = document.createElement(\"div\");\n            legend.classList.add(\"legend\");\n            var offsets = document.querySelector(`[data-chartid=\"${chartid}\"]`).getBoundingClientRect();\n            var chartwrapperTop = offsets.top;<\/p>\n<p>            var legendHeight = height *-1\n            if(legendHeight>-210){legendHeight = -210;}\n            legend.style.top = legendHeight*1.2  + \"px\"\n            positionDIV.appendChild(legend);<\/p>\n<p>            if(hidetitle == \"false\"){\n                var firstRow = document.createElement(\"div\");\n                firstRow.classList.add(\"titleText\");\t<\/p>\n<p>            }<\/p>\n<p>            var secondRow = document.createElement(\"div\");\n            secondRow.classList.add(\"secondRow\");\t<\/p>\n<p>            if(kursData !== null){\n                if(hidetitle == \"false\"){\n                    firstRow.innerText = companyName\n                    legend.appendChild(firstRow);\n                }<\/p>\n<p>                secondRow.innerText = kursDate +\": \" + Number(kursData).toFixed(2) + \" \"+currency;\n                 legend.appendChild(secondRow);\n            }else{\n                if(hidetitle == \"false\"){\n                    firstRow.innerText = companyName\n                    legend.appendChild(firstRow);\n                }<\/p>\n<p>                legend.appendChild(secondRow);\n            }<\/p>\n<p>            \/\/ cursor moving and handling third row of legend\n            chart.subscribeCrosshairMove((param) => {\n                if (param.time) {\n                    let options = { weekday: \"short\", year: \"numeric\", month: \"numeric\", day: \"numeric\" };\n                    let currentDate = new Date(param.time).toLocaleDateString(\"de-DE\", options)\n                    const price = param.seriesData.get(areaSeries).value;\n                    secondRow.innerText = currentDate + \":  \" + price.toFixed(2) + \" \"+(currency?currency:\" \");\n                }\n            else {\n                secondRow.innerText = kursDate +\": \" + Number(kursData).toFixed(2) + \" \"+currency;<\/p>\n<p>            }\n            });<\/p>\n<p>        }<\/p>\n<p>    }\n    function httpGetAsync(theUrl, callback) {\n            var xmlHttp = new XMLHttpRequest();\n            xmlHttp.onreadystatechange = function () {\n                if (xmlHttp.readyState == 4 && xmlHttp.status == 200)\n                    callback(xmlHttp.responseText);\n            }\n            xmlHttp.open(\"GET\", theUrl, true); \/\/ true for asynchronous \n            xmlHttp.send(null);\n        };\n    function getTimeframe(interval){\n            let from = null;\n            let to = formatDate(new Date());\n            switch (interval) {\n                case \"1M\": from = formatDate(new Date(Date.now() - 31 * 24 * 60 * 60 * 1000)); break;\n                case \"3M\": from = formatDate(new Date(Date.now() - 93 * 24 * 60 * 60 * 1000)); break;\n                case \"6M\": from = formatDate(new Date(Date.now() - 186 * 24 * 60 * 60 * 1000)); break;\n                case \"1Y\": from = formatDate(new Date(Date.now() - 372 * 24 * 60 * 60 * 1000)); break;\n                case \"3Y\": from = formatDate(new Date(Date.now() - 1116 * 24 * 60 * 60 * 1000)); break;\n                case \"5Y\": from = formatDate(new Date(Date.now() - 1860 * 24 * 60 * 60 * 1000)); break;\n                default:from = formatDate(new Date(Date.now() - 372 * 24 * 60 * 60 * 1000));<\/p>\n<p>                }\n            return {from:from, to:to}\n        };\n        function formatDate(date) {<\/p>\n<p>            var  month = \"\" + (date.getMonth()+1);\n            var   day = \"\" + date.getDate();\n            var   year = date.getFullYear();<\/p>\n<p>            if (month.length < 2) \n                month = \"0\" + month;\n            if (day.length < 2) \n                day = \"0\" + day;\n\n            return [year, month, day].join(\"-\");\n        };\n    <\/script><br \/>\n    <script id=\"main\"><\/p>\n<p>    var scriptTV = document.querySelector(\"#tvChartLoader\");\n    scriptTV.addEventListener(\"load\", function() {\n        var chartid = \"6a5c59d9b8947\";<\/p>\n<p>        var companyName = \"Matthews China Small Coms Fd A USD Acc\";\n        if(companyName.length <=0){\n        companyName = \"LU0721876364 - EUFUND\";\n        }\n        var code = \"LU0721876364\";\n        var exchange = \"EUFUND\";\n        var currency =\"USD\";\n        var kursData = null;\n        var kursDataDate = null;\n        var chartHeight = \"\";\n        var chartWidth = \"250\"\n        var hidetitle = \"false\"\n        var hidelegend = \"false\"\n        let apiToken = \"za1j116n2273ab1vxukuh6\"\n        chartWidth = document.querySelector(`[data-chartid=\"${chartid}\"]`).offsetWidth\n        var chartData = [];\n        var timeframe = getTimeframe(\"1Y\");\n        var filter = \"adjusted_close\";\n        \n        httpGetAsync(\"https:\/\/api.leeway.tech\/api\/v1\/public\/historicalquotes\/\"+encodeURIComponent(code+\".\"+exchange)+\"?apitoken=\"+apiToken+\"&#038;filter=\"+filter+\"&#038;from=\"+timeframe.from+\"&#038;to=\"+timeframe.to, function (res) {\t\n            let newData = null;\n             chartData = newData = JSON.parse(res)\n            \/\/ chartData =  chartData.map(el=>{return{value:el.value, time:el.time, timestamp:new Date(el.time.year, el.time.month-1, el.time.day).getTime()}})\n             kursData = chartData[chartData.length-1].value\n             let options = { weekday: \"short\", year: \"numeric\", month: \"numeric\", day: \"numeric\" };\n             kursDataDate = chartData[chartData.length-1].time\n             let kursDate = new Date(kursDataDate.split(\"-\")[0], Number(kursDataDate.split(\"-\")[1])-1, kursDataDate.split(\"-\")[2]).toLocaleDateString(\"de-DE\", options)<\/p>\n<p>             renderTV(kursData,chartData,companyName,currency, Number(chartHeight), Number(chartWidth), code, exchange, kursDate, hidetitle, hidelegend, chartid)\n        });\n    });\n<\/script><\/p>\n<p>Was diese Unternehmen verbindet: Sie stehen selten im Rampenlicht, verf\u00fcgen aber h\u00e4ufig \u00fcber starke Marktpositionen und profitieren von langfristigen Strukturtrends statt kurzfristigen B\u00f6rsenmoden. Genau dort versucht Tiffany Hsiao, zus\u00e4tzliches Alpha f\u00fcr ihre Anleger zu generieren.<\/p>\n<p>Der Preis daf\u00fcr ist ein bewusst konzentriertes Portfolio mit entsprechend h\u00f6heren Kursschwankungen. Wer kurzfristige R\u00fcckschl\u00e4ge aush\u00e4lt und an Chinas Innovationskraft glaubt, findet hier jedoch einen Fonds, der bewusst abseits des Mainstreams investiert \u2013 und gerade deshalb das Potenzial f\u00fcr \u00fcberdurchschnittliche Renditen bietet.<\/p>\n<h4>T. Rowe Price China Evolution Equity Fund \u2013 Der Fonds f\u00fcr das China von morgen<\/h4>\n<p>Auch Fondsmanagerin Wenli Zheng schwimmt bewusst gegen den Strom. Statt den bekannten Internetgiganten hinterherzulaufen, sucht sie f\u00fcr den <a href=\"https:\/\/www.troweprice.com\/financial-intermediary\/de\/en\/funds\/sicav\/china-evolution-equity-fund.html\" target=\"_blank\" rel=\"noopener\">T.Rowe Price China Evolution Equity Fund<\/a> (ISIN: LU2187417543) nach den Unternehmen, die den wirtschaftlichen Umbau Chinas langfristig pr\u00e4gen werden. Im Mittelpunkt stehen Firmen mit hoher Kapitalrendite, soliden Bilanzen und nachhaltigen Wettbewerbsvorteilen \u2013 Unternehmen also, deren Potenzial nach Ansicht des Managements vom Markt noch nicht vollst\u00e4ndig erkannt wird.<\/p>\n<h5>Auf der Suche nach den Gewinnern des Strukturwandels<\/h5>\n<p>Die Strategie zahlt sich derzeit aus. Seit Jahresbeginn 2026 legte der Fonds rund 40 Prozent zu, auf Sicht von 12 Monaten betr\u00e4gt das Plus rund 72 Prozent. Damit z\u00e4hlt auch dieses Portfolio zu den st\u00e4rksten aktiv gemanagten China-Fonds.<\/p>\n<p>Ein Blick auf die gr\u00f6\u00dften Positionen zeigt, worauf Wenli Zheng setzt. Yunnan Aluminium profitiert vom weltweit steigenden Bedarf an Leichtbaumetallen f\u00fcr Elektromobilit\u00e4t, Stromnetze und moderne Industrieanlagen. Unimicron Technology geh\u00f6rt zu den f\u00fchrenden Herstellern hochwertiger Leiterplatten und Chip-Substrate \u2013 Schl\u00fcsselkomponenten f\u00fcr Hochleistungsrechner, Rechenzentren und Anwendungen rund um K\u00fcnstliche Intelligenz. Erg\u00e4nzt wird das Portfolio durch Yantai Jereh Oilfield Services, einen international erfolgreichen Spezialisten f\u00fcr Energie- und \u00d6lfelddienstleistungen, der von der weltweit robusten Nachfrage nach Energieinfrastruktur profitiert.<\/p>\n<p>Die Auswahl macht deutlich, dass der Fonds nicht auf kurzfristige B\u00f6rsenmoden setzt. Stattdessen investiert Wenli Zheng in Unternehmen, die vom technologischen Fortschritt, der Modernisierung der Industrie und dem strukturellen Wandel der chinesischen Wirtschaft profitieren sollen. Dadurch weicht das Portfolio bewusst von klassischen China-Indizes ab. Der h\u00f6here Tracking Error erh\u00f6ht zwar die Schwankungen, er\u00f6ffnet langfristig aber auch die Chance auf eine \u00fcberdurchschnittliche Wertentwicklung.<\/p>\n<h4>Xtrackers CSI 300 Swap UCITS ETF \u2013 Das Herz der chinesischen Wirtschaft<\/h4>\n<p>Wer m\u00f6glichst breit in Chinas heimischen Aktienmarkt investieren m\u00f6chte, landet fr\u00fcher oder sp\u00e4ter beim CSI 300. Der Index umfasst die 300 gr\u00f6\u00dften und liquidesten A-Aktien der B\u00f6rsen in Shanghai und Shenzhen und gilt als wichtigster Gradmesser der chinesischen Binnenwirtschaft. Anders als viele globale China-Indizes, die von Internetgiganten aus Hongkong oder den USA dominiert werden, r\u00fccken hier Industrie-, Technologie-, Konsum- und Finanzunternehmen aus dem chinesischen Festland in den Mittelpunkt.<\/p>\n<h5>Breiter Zugang zu Chinas A-Aktien<\/h5>\n<p>Der <a href=\"https:\/\/etf.dws.com\/de-de\/LU0779800910-csi300-swap-ucits-etf-1c\/\" target=\"_blank\" rel=\"noopener\">Xtrackers CSI 300 Swap UCITS ETF<\/a> (ISIN: LU0779800910) bildet den Index synthetisch \u00fcber einen Swap nach und erm\u00f6glicht Anlegern damit einen effizienten Zugang zu chinesischen A-Aktien, die f\u00fcr ausl\u00e4ndische Investoren h\u00e4ufig nur eingeschr\u00e4nkt handelbar sind. Mit 300 Unternehmen bietet der Index eine breite Diversifikation und bildet die wirtschaftliche Entwicklung des chinesischen Binnenmarktes deutlich umfassender ab als ein Portfolio aus wenigen bekannten Mega-Caps.<\/p>\n<p>\u00a0<\/p>\n<div class=\"chartwrapper\" id=\"chartwrapper\" data-chartid=\"6a5c59d9b8978\"><\/div>\n<p>    <script id=\"tvChartLoader\" async src=\"https:\/\/unpkg.com\/lightweight-charts@4.2.0\/dist\/lightweight-charts.standalone.production.js\"><\/script><\/p>\n<p>    <script id=\"declarations\">\n    var chartid = \"6a5c59d9b8978\";\n    function renderTV(kursData, chartData,companyName,currency, chartHeight, chartWidth, code, exchange, kursDate, hidetitle, hidelegend, chartid) {      \n    \tconsole.log(\"render chart with id\", document.querySelector(`[data-chartid=\"${chartid}\"]`));\n        let width = chartWidth?chartWidth:600;\n        let ratio = 2\n        let height = chartHeight?chartHeight:(width\/ratio);\n        document.querySelector(`[data-chartid=\"${chartid}\"]`).style.height = chartHeight +50\n        document.querySelector(`[data-chartid=\"${chartid}\"]`).style.width = chartWidth<\/p>\n<p>        \/\/ formatter for x achis dates\n        function customXAchsisFormetter(timePoint, tickMarkType, locale) {\n            let formatOptions = {};\n            const date = new Date(timePoint);<\/p>\n<p>            if(tickMarkType <=1){\n                formatOptions = {day: \"numeric\", month: \"short\",year: \"numeric\",}\n\n            }else{\n                formatOptions = {day: \"numeric\", month: \"short\",year: \"numeric\",}\n            }\n            \/\/ from given date we should use only as UTC date or timestamp\n            \/\/ but to format as locale date we can convert UTC date to local date\n            const localDateFromUtc = new Date(\n                date.getUTCFullYear(),\n                date.getUTCMonth(),\n                date.getUTCDate()\n            );\n\n            return localDateFromUtc.toLocaleString(locale, formatOptions);\n        }\n\n        \/\/create buttons\n        function createSimpleSwitcher(items, activeItem, activeItemChangedCallback) {\n            var switcherElement = document.createElement(\"div\");\n            switcherElement.classList.add(\"switcher\");\n\n            var intervalElements = items.map(function (item) {\n                var itemEl = document.createElement(\"button\");\n                itemEl.innerText = item;\n                itemEl.classList.add(\"switcher-item\");\n                itemEl.classList.toggle(\"switcher-active-item\", item === activeItem);\n                itemEl.addEventListener(\"click\", function () {\n                    onItemClicked(item);\n                });\n                switcherElement.appendChild(itemEl);\n                return itemEl;\n            });\n\n            function onItemClicked(item) {\n                if (item === activeItem) {\n                    return;\n                }\n\n                intervalElements.forEach(function (element, index) {\n                    element.classList.toggle(\"switcher-active-item\", items[index] === item);\n                });\n\n                activeItem = item;\n\n                activeItemChangedCallback(item);\n            }\n\n            return switcherElement;\n        }\n        \/\/ loading: true or false\n        function handleAsyncUI(loading){\n            var IntervalButtons = document.getElementsByClassName(\"switcher-item\");\n             for(var i = 0; i < IntervalButtons.length; i++){\n                IntervalButtons[i].disabled = loading;\n             } \n             var chart = document.getElementsByClassName(\"tv-lightweight-charts\")[0];\n             if(loading){\n            \n            chart.style[\"display\"] = \"flex\"\n            chart.style[\"align-items\"] = \"center\"\n            chart.style[\"justify-content\"] = \"center\"\n\n            var loadingIndicator = document.createElement(\"div\");\n            loadingIndicator.classList.add(\"loader\");\n            \/\/loadingIndicator.innerText = \"Loading\";\n            loadingIndicator.id =\"loadingIndicator\"\n            chart.appendChild(loadingIndicator);\n             }else{\n            document.getElementById(\"loadingIndicator\").remove();\n            chart.style[\"display\"] = null\n            chart.style[\"align-items\"] =null\n            chart.style[\"justify-content\"] = null\n             }\n\n        }\n        var intervals = [\"1M\",\"3M\",\"6M\",\"1Y\",\"3Y\",\"5Y\"];\n        var seriesesData = new Map([\n            [\"1M\", []], \/\/ 1m (interval daten?), 3m, 6m, 1y, 3y, 5y\n            [\"3M\", []],\n            [\"6M\", []],\n            [\"1Y\", chartData],\n            [\"3Y\", []],\n            [\"5Y\", []],\n        ]);\n        var switcherElement = createSimpleSwitcher(intervals, intervals[3], syncToInterval);\n        var chartElement = document.createElement(\"div\");\n        const chart = LightweightCharts.createChart(chartElement, {\n            width: width,\n            height: height,\n            rightPriceScale: {\n                scaleMargins: {\n                    top: 0.2,\n                    bottom: 0.2,\n                },\n                borderVisible: false,\n            },\n            timeScale: {\n                borderVisible: false,\n                lockVisibleTimeRangeOnResize: true,\n\n                rightOffset:1,\n                tickMarkFormatter:customXAchsisFormetter\n\n            },\n            grid: {\n                horzLines: {\n                    color: \"#eee\",\n                    visible: false,\n                },\n                vertLines: {\n                    color: \"#ffffff\",\n                },\n            },\n            crosshair: {\n                horzLine: {\n                    visible: false,\n                    labelVisible: false\n                },\n                vertLine: {\n                    visible: true,\n                    style: 0,\n                    width: 2,\n                    color: \"rgba(80, 50, 25, 0.1)\",\n                    labelVisible: false,\n                }\n            },\n            handleScroll: {\n                mouseWheel: false,\n                pressedMouseMove: false,\n                horzTouchDrag: false,\n                vertTouchDrag: false\n            },\n            handleScale: {\n                axisPressedMouseMove: false,\n                mouseWheel: false,\n                pinch: false,\n            },\n        });\n        var areaSeries = null;\n        var positionDIV = document.querySelector(`[data-chartid=\"${chartid}\"]`)\n        positionDIV.appendChild(chartElement);\n        positionDIV.appendChild(switcherElement);\n        function httpGetAsync(theUrl, callback) {\n            var xmlHttp = new XMLHttpRequest();\n            xmlHttp.onreadystatechange = function () {\n                if (xmlHttp.readyState == 4 &#038;&#038; xmlHttp.status == 200)\n                    callback(xmlHttp.responseText);\n            }\n            xmlHttp.open(\"GET\", theUrl, true); \/\/ true for asynchronous \n            xmlHttp.send(null);\n        }\n        function formatDate(date) {\n            \n            var month = \"\" + (date.getMonth()+1);\n            var day = \"\" + date.getDate();\n            var year = date.getFullYear();\n\n            if (month.length < 2) \n                month = \"0\" + month;\n            if (day.length < 2) \n                day = \"0\" + day;\n            return [year, month, day].join(\"-\");\n        }\n        function getTimeframe(interval){\n            let from = null;\n            let to = formatDate(new Date());\n            switch (interval) {\n                case \"1M\": from = formatDate(new Date(Date.now() - 31 * 24 * 60 * 60 * 1000)); break;\n                case \"3M\": from = formatDate(new Date(Date.now() - 93 * 24 * 60 * 60 * 1000)); break;\n                case \"6M\": from = formatDate(new Date(Date.now() - 186 * 24 * 60 * 60 * 1000)); break;\n                case \"1Y\": from = formatDate(new Date(Date.now() - 372 * 24 * 60 * 60 * 1000)); break;\n                case \"3Y\": from = formatDate(new Date(Date.now() - 1116 * 24 * 60 * 60 * 1000)); break;\n                case \"5Y\": from = formatDate(new Date(Date.now() - 1860 * 24 * 60 * 60 * 1000)); break;\n                default:from = formatDate(new Date(Date.now() - 372 * 24 * 60 * 60 * 1000));\n                \n                }\n            return {from:from, to:to}\n        }\t\n        \/\/ what happens on button click\n        function syncToInterval(interval) {\n            if (areaSeries &#038;&#038; seriesesData.get(interval).length <=0) {\n                console.log(\"GETTING REMOTE DATA\")\n\n                chart.removeSeries(areaSeries);\n                areaSeries = null;\n                let apiToken = \"za1j116n2273ab1vxukuh6\"\n                let timeframe = getTimeframe(interval)\n                let filter = \"adjusted_close\"\n                handleAsyncUI(true)\t\t\t\t\t\t\n                httpGetAsync(\"https:\/\/api.leeway.tech\/api\/v1\/public\/historicalquotes\/\"+encodeURIComponent(code+\".\"+exchange)+\"?apitoken=\"+apiToken+\"&#038;filter=\"+filter+\"&#038;from=\"+timeframe.from+\"&#038;to=\"+timeframe.to, function (res) {\t\n                    let newData = []\n                    newData = JSON.parse(res)\/\/.map(el=>newData.push({time:el.date, value:el.close}))\n                    \/\/ newData = newData.map(el=>{\n                    \/\/     console.log(el.time.year)\n                    \/\/     console.log(el.time.month)\n                    \/\/     console.log(el.time.day)\n                    \/\/     console.log(el)\n                    \/\/     console.log(new Date(el.time.year, el.time.month-1, el.time.day));\n                    \/\/     return{value:el.value, time:el.time, timestamp:new Date(el.time.year, el.time.month-1, el.time.day).getTime()}})\n                    console.log(\"newData\")\n                    console.log(newData)\n                    seriesesData.set(interval, newData)\n                    areaSeries = chart.addAreaSeries({\n                        topColor: \"rgba(33, 108, 173, 0.56)\",\n                        bottomColor: \"rgba(33, 108, 173, 0.04)\",\n                        lineColor: \"rgba(33, 108, 173, 1)\",\n                    lineWidth: 2,\n                });\n                kursData = seriesesData.get(interval)[seriesesData.get(interval).length-1].value\n                areaSeries.setData(seriesesData.get(interval));\n                chart.timeScale().fitContent();\n                handleAsyncUI(false)\t\n                    })\n            }else{\n                console.log(\"GETTING LOADED DATA\")\n                if(areaSeries){\n                    console.log(\"DELETING  LOADED DATA FROM CHART\")\n                    chart.removeSeries(areaSeries);\n                    areaSeries = null;\n                }\n                kursData = seriesesData.get(interval)[seriesesData.get(interval).length-1].value\n                areaSeries = chart.addAreaSeries({\n                topColor: \"rgba(33, 108, 173, 0.56)\",\n                bottomColor: \"rgba(33, 108, 173, 0.04)\",\n                lineColor: \"rgba(33, 108, 173, 1)\",\n                lineWidth: 2,\n            });\n            areaSeries.setData(seriesesData.get(interval));<\/p>\n<p>            chart.timeScale().fitContent();\n            }<\/p>\n<p>        }\n        \/\/ data interval at startup\n        syncToInterval(intervals[3]);\n        \/\/ Name and Kurs as Text in legend<\/p>\n<p>        var watermark = document.createElement(\"img\")\n        watermark.classList.add(\"watermark\")\n        watermark.setAttribute(\"src\", \"https:\/\/api.leeway.tech\/leeway-sign.png\")\n        var testA = document.querySelector(`[data-chartid=\"${chartid}\"]`)\n        var testB = document.querySelector(`[data-chartid=\"${chartid}\"]`).getBoundingClientRect();\n        var test =  testA.getElementsByTagName(\"canvas\")[0].getBoundingClientRect();\n        watermark.style.position = \"absolute\";\n        watermark.style.width = \"90px\";\n        watermark.style.height = \"30px\";\n        watermark.style.display = \"block\";\n        \/\/watermark.style.z-index = \"1000000\";\n        watermark.style.bottom = \"0\";\n        watermark.style.right = \"10px\";<\/p>\n<p>        let linkLW = document.createElement(\"a\")\n        linkLW.href=\"https:\/\/www.ftd.de\/leeway-tech\";\n        linkLW.target = \"_blank\";\n        linkLW.appendChild(watermark)\n        \/\/ append to DOM<\/p>\n<p>        \/\/div-chartwrapper -> div -> div ->  table  -> tr ->  td td -> div\n        const myElementA = document.querySelector(`[data-chartid=\"${chartid}\"]`);\n        let myElementB = myElementA.childNodes[0]\n        let myElementC = myElementB.childNodes[0]\n        let myElementD = myElementC.childNodes[0]\n        let myElementE = myElementD.childNodes[0]\n        let myElementF = myElementE.childNodes[1]\n        let myElementG = myElementF.childNodes[0]\n        myElementG.appendChild(linkLW);<\/p>\n<p>        if(hidelegend == \"false\"){\n            console.log(\"SHOW LEGEND!\")\n            var legend = document.createElement(\"div\");\n            legend.classList.add(\"legend\");\n            var offsets = document.querySelector(`[data-chartid=\"${chartid}\"]`).getBoundingClientRect();\n            var chartwrapperTop = offsets.top;<\/p>\n<p>            var legendHeight = height *-1\n            if(legendHeight>-210){legendHeight = -210;}\n            legend.style.top = legendHeight*1.2  + \"px\"\n            positionDIV.appendChild(legend);<\/p>\n<p>            if(hidetitle == \"false\"){\n                var firstRow = document.createElement(\"div\");\n                firstRow.classList.add(\"titleText\");\t<\/p>\n<p>            }<\/p>\n<p>            var secondRow = document.createElement(\"div\");\n            secondRow.classList.add(\"secondRow\");\t<\/p>\n<p>            if(kursData !== null){\n                if(hidetitle == \"false\"){\n                    firstRow.innerText = companyName\n                    legend.appendChild(firstRow);\n                }<\/p>\n<p>                secondRow.innerText = kursDate +\": \" + Number(kursData).toFixed(2) + \" \"+currency;\n                 legend.appendChild(secondRow);\n            }else{\n                if(hidetitle == \"false\"){\n                    firstRow.innerText = companyName\n                    legend.appendChild(firstRow);\n                }<\/p>\n<p>                legend.appendChild(secondRow);\n            }<\/p>\n<p>            \/\/ cursor moving and handling third row of legend\n            chart.subscribeCrosshairMove((param) => {\n                if (param.time) {\n                    let options = { weekday: \"short\", year: \"numeric\", month: \"numeric\", day: \"numeric\" };\n                    let currentDate = new Date(param.time).toLocaleDateString(\"de-DE\", options)\n                    const price = param.seriesData.get(areaSeries).value;\n                    secondRow.innerText = currentDate + \":  \" + price.toFixed(2) + \" \"+(currency?currency:\" \");\n                }\n            else {\n                secondRow.innerText = kursDate +\": \" + Number(kursData).toFixed(2) + \" \"+currency;<\/p>\n<p>            }\n            });<\/p>\n<p>        }<\/p>\n<p>    }\n    function httpGetAsync(theUrl, callback) {\n            var xmlHttp = new XMLHttpRequest();\n            xmlHttp.onreadystatechange = function () {\n                if (xmlHttp.readyState == 4 && xmlHttp.status == 200)\n                    callback(xmlHttp.responseText);\n            }\n            xmlHttp.open(\"GET\", theUrl, true); \/\/ true for asynchronous \n            xmlHttp.send(null);\n        };\n    function getTimeframe(interval){\n            let from = null;\n            let to = formatDate(new Date());\n            switch (interval) {\n                case \"1M\": from = formatDate(new Date(Date.now() - 31 * 24 * 60 * 60 * 1000)); break;\n                case \"3M\": from = formatDate(new Date(Date.now() - 93 * 24 * 60 * 60 * 1000)); break;\n                case \"6M\": from = formatDate(new Date(Date.now() - 186 * 24 * 60 * 60 * 1000)); break;\n                case \"1Y\": from = formatDate(new Date(Date.now() - 372 * 24 * 60 * 60 * 1000)); break;\n                case \"3Y\": from = formatDate(new Date(Date.now() - 1116 * 24 * 60 * 60 * 1000)); break;\n                case \"5Y\": from = formatDate(new Date(Date.now() - 1860 * 24 * 60 * 60 * 1000)); break;\n                default:from = formatDate(new Date(Date.now() - 372 * 24 * 60 * 60 * 1000));<\/p>\n<p>                }\n            return {from:from, to:to}\n        };\n        function formatDate(date) {<\/p>\n<p>            var  month = \"\" + (date.getMonth()+1);\n            var   day = \"\" + date.getDate();\n            var   year = date.getFullYear();<\/p>\n<p>            if (month.length < 2) \n                month = \"0\" + month;\n            if (day.length < 2) \n                day = \"0\" + day;\n\n            return [year, month, day].join(\"-\");\n        };\n    <\/script><br \/>\n    <script id=\"main\"><\/p>\n<p>    var scriptTV = document.querySelector(\"#tvChartLoader\");\n    scriptTV.addEventListener(\"load\", function() {\n        var chartid = \"6a5c59d9b8978\";<\/p>\n<p>        var companyName = \"Xtrackers CSI300 Swap UCITS ETF 1C\";\n        if(companyName.length <=0){\n        companyName = \"XCHA - XETRA\";\n        }\n        var code = \"XCHA\";\n        var exchange = \"XETRA\";\n        var currency =\"EUR\";\n        var kursData = null;\n        var kursDataDate = null;\n        var chartHeight = \"\";\n        var chartWidth = \"250\"\n        var hidetitle = \"false\"\n        var hidelegend = \"false\"\n        let apiToken = \"za1j116n2273ab1vxukuh6\"\n        chartWidth = document.querySelector(`[data-chartid=\"${chartid}\"]`).offsetWidth\n        var chartData = [];\n        var timeframe = getTimeframe(\"1Y\");\n        var filter = \"adjusted_close\";\n        \n        httpGetAsync(\"https:\/\/api.leeway.tech\/api\/v1\/public\/historicalquotes\/\"+encodeURIComponent(code+\".\"+exchange)+\"?apitoken=\"+apiToken+\"&#038;filter=\"+filter+\"&#038;from=\"+timeframe.from+\"&#038;to=\"+timeframe.to, function (res) {\t\n            let newData = null;\n             chartData = newData = JSON.parse(res)\n            \/\/ chartData =  chartData.map(el=>{return{value:el.value, time:el.time, timestamp:new Date(el.time.year, el.time.month-1, el.time.day).getTime()}})\n             kursData = chartData[chartData.length-1].value\n             let options = { weekday: \"short\", year: \"numeric\", month: \"numeric\", day: \"numeric\" };\n             kursDataDate = chartData[chartData.length-1].time\n             let kursDate = new Date(kursDataDate.split(\"-\")[0], Number(kursDataDate.split(\"-\")[1])-1, kursDataDate.split(\"-\")[2]).toLocaleDateString(\"de-DE\", options)<\/p>\n<p>             renderTV(kursData,chartData,companyName,currency, Number(chartHeight), Number(chartWidth), code, exchange, kursDate, hidetitle, hidelegend, chartid)\n        });\n    });\n<\/script><\/p>\n<p>Auch die Performance kann sich sehen lassen. Seit Jahresbeginn 2026 legte der ETF rund 30 Prozent zu, auf Sicht von 12 Monaten betr\u00e4gt das Plus rund 78 Prozent.<\/p>\n<p>Die gr\u00f6\u00dften Positionen spiegeln die wirtschaftliche Vielfalt Chinas wider. Zhongji Innolight profitiert vom weltweiten Boom rund um K\u00fcnstliche Intelligenz und den Ausbau von Hochgeschwindigkeits-Glasfasernetzen. Kweichow Moutai, Hersteller des chinesischen Nationalgetr\u00e4nks Baijiu, z\u00e4hlt zu den profitabelsten Konsumg\u00fcterunternehmen der Welt und verf\u00fcgt \u00fcber eine au\u00dfergew\u00f6hnliche Preissetzungsmacht. China Merchants Bank steht stellvertretend f\u00fcr den wachsenden Wohlstand der chinesischen Mittelschicht und den Ausbau des modernen Finanzsektors.<\/p>\n<p>Mit einer Gesamtkostenquote von lediglich 0,35 Prozent bietet der ETF einen kosteng\u00fcnstigen Zugang zu einem Aktienmarkt, dessen Bewertungen im internationalen Vergleich weiterhin attraktiv erscheinen. Wer an die langfristige Entwicklung der chinesischen Wirtschaft glaubt, erh\u00e4lt mit dem Xtrackers CSI 300 Swap UCITS ETF eine breit diversifizierte Basisinvestition in die wichtigsten Unternehmen des Landes.<\/p>\n<h3>Fazit: Der Mut zur Unbeliebtheit k\u00f6nnte sich auszahlen<\/h3>\n<p>China bleibt einer der umstrittensten Aktienm\u00e4rkte der Welt. Die politischen Risiken verschwinden nicht \u00fcber Nacht. Doch genau deshalb sind viele Qualit\u00e4tsunternehmen heute so g\u00fcnstig bewertet wie seit Jahren nicht mehr.<\/p>\n<p>Die 3 vorgestellten Strategien verfolgen unterschiedliche Ans\u00e4tze, haben aber eine gemeinsame \u00dcberzeugung: Der chinesische Aktienmarkt ist weit mehr als Alibaba und Tencent. Innovation entsteht l\u00e4ngst im Mittelstand, bei Industrieunternehmen und Technologief\u00fchrern der zweiten Reihe.<\/p>\n<p>Vielleicht liegt genau darin die eigentliche <a href=\"https:\/\/www.ftd.de\/boerse\/maerkte\/geopolitische-realitaet-china-als-portfolio-diversifikation-neu-definiert\/\" target=\"_blank\" rel=\"noopener\">Investmentchance<\/a>. Denn an der B\u00f6rse werden selten die M\u00e4rkte belohnt, die gerade jeder kaufen m\u00f6chte. Oft entstehen die attraktivsten Renditen dort, wo der Pessimismus bereits vollst\u00e4ndig eingepreist ist.<\/p>\n<p>\u00a0<\/p>\n<p style=\"font-size: 12px;\">Disclaimer:<br \/>\nKeine Anlageberatung. Kein Aufruf zum Kauf oder Verkauf von Wertpapieren.<\/p>\n<p>Der Beitrag <a href=\"https:\/\/www.ftd.de\/boerse\/maerkte\/china-aktien-warum-profis-wieder-einsteigen-und-welche-fonds-jetzt-potenzial-haben\/\">China Aktien: Warum Profis wieder einsteigen \u2013 und welche Fonds jetzt Potenzial haben<\/a> erschien zuerst auf <a href=\"https:\/\/www.ftd.de\/\">ftd.de<\/a>.<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Der historische Bewertungsabschlag chinesischer Aktien gegen\u00fcber westlichen M\u00e4rkten bietet antizyklischen Investoren eine seltene Chance auf substanzstarke Marktf\u00fchrer. (Bild: Magnific AI) Die zweitgr\u00f6\u00dfte Volkswirtschaft der Welt gilt an der B\u00f6rse noch immer als Problemfall. Doch genau das k\u00f6nnte f\u00fcr Anleger zur gr\u00f6\u00dften Chance der kommenden Jahre werden. Warum chinesische Aktien historisch g\u00fcnstig bewertet sind, weshalb antizyklische [&hellip;]<\/p>\n","protected":false},"author":11,"featured_media":141912,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","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":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"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":""},"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-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":"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":""},"mobile":{"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":""}},"footnotes":""},"categories":[22,1],"tags":[],"class_list":["post-141911","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ft","category-topstory"],"_links":{"self":[{"href":"https:\/\/news.abusizz.ch\/de\/wp-json\/wp\/v2\/posts\/141911","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/news.abusizz.ch\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/news.abusizz.ch\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/news.abusizz.ch\/de\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/news.abusizz.ch\/de\/wp-json\/wp\/v2\/comments?post=141911"}],"version-history":[{"count":0,"href":"https:\/\/news.abusizz.ch\/de\/wp-json\/wp\/v2\/posts\/141911\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/news.abusizz.ch\/de\/wp-json\/wp\/v2\/media\/141912"}],"wp:attachment":[{"href":"https:\/\/news.abusizz.ch\/de\/wp-json\/wp\/v2\/media?parent=141911"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/news.abusizz.ch\/de\/wp-json\/wp\/v2\/categories?post=141911"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/news.abusizz.ch\/de\/wp-json\/wp\/v2\/tags?post=141911"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}