{"id":37357,"date":"2024-11-01T09:56:57","date_gmt":"2024-11-01T09:56:57","guid":{"rendered":"http:\/\/atmokpo.com\/w\/?p=37357"},"modified":"2024-11-01T11:51:08","modified_gmt":"2024-11-01T11:51:08","slug":"automated-trading-development-with-python-introduction-to-pyqt-and-qt-designer","status":"publish","type":"post","link":"https:\/\/atmokpo.com\/w\/37357\/","title":{"rendered":"Automated Trading Development with Python, Introduction to PyQt and Qt Designer"},"content":{"rendered":"<p><body><\/p>\n<p>\n        Automated trading is a system that automatically executes trades in financial markets based on algorithms.<br \/>\n        This eliminates the emotional judgment of investors and enables faster and more accurate trading.<br \/>\n        In this course, we will cover how to develop an automated trading system using Python,<br \/>\n        and introduce how to utilize PyQt and Qt Designer to build a user interface (UI).\n    <\/p>\n<h2>1. Overview of Python Automated Trading System<\/h2>\n<p>\n        Python is a very suitable language for developing automated trading systems.<br \/>\n        It offers libraries that provide access to various financial data and strong algorithmic calculation capabilities.<br \/>\n        Additionally, thanks to Python&#8217;s community and the wealth of resources available, you can find many examples and help.\n    <\/p>\n<h3>1.1. Principles of Automated Trading<\/h3>\n<p>\n        The basic principle of automated trading systems is to create algorithms that generate signals and<br \/>\n        execute trades based on these signals.<br \/>\n        Typically, signal generators are based on chart patterns, technical indicators, news analysis, and more.\n    <\/p>\n<h3>1.2. Required Libraries<\/h3>\n<p>\n        The following libraries are required to develop an automated trading system:\n    <\/p>\n<ul>\n<li><code>pandas<\/code>: Library for data processing<\/li>\n<li><code>numpy<\/code>: Library for mathematical calculations<\/li>\n<li><code>matplotlib<\/code>: Library for data visualization<\/li>\n<li><code>TA-Lib<\/code>: Library for technical analysis<\/li>\n<li><code>ccxt<\/code>: Library for data communication with various exchanges<\/li>\n<\/ul>\n<h2>2. Setting Up the Development Environment<\/h2>\n<p>Let&#8217;s explore how to set up the necessary environment for developing an automated trading system.<\/p>\n<h3>2.1. Installing Python and Libraries<\/h3>\n<p>\n        First, you need to have Python installed. Download and install the latest version from the <a href=\"https:\/\/www.python.org\/downloads\/\">official Python website<\/a>.\n    <\/p>\n<pre>\n        <code>\n        pip install pandas numpy matplotlib ta-lib ccxt\n        <\/code>\n    <\/pre>\n<h3>2.2. Installing an IDE<\/h3>\n<p>\n        It is recommended to use an integrated development environment (IDE) such as PyCharm, VSCode, or Jupyter Notebook for convenient coding.\n    <\/p>\n<h2>3. Implementing Automated Trading Algorithms<\/h2>\n<p>In this section, we will implement a simple moving average crossover strategy.<\/p>\n<h3>3.1. Data Collection<\/h3>\n<p>\n        We will look at how to collect real-time data from exchanges using the CCXT library.<br \/>\n        For example, the code to fetch the Bitcoin price from Binance is as follows.\n    <\/p>\n<pre>\n        <code>\n        import ccxt\n        import pandas as pd\n\n        # Creating a Binance instance\n        binance = ccxt.binance()\n\n        # Fetching Bitcoin data\n        ohlcv = binance.fetch_ohlcv('BTC\/USDT', timeframe='1d')\n        df = pd.DataFrame(ohlcv, columns=['timestamp', 'open', 'high', 'low', 'close', 'volume'])\n        df['timestamp'] = pd.to_datetime(df['timestamp'], unit='ms')\n        print(df.head())\n        <\/code>\n    <\/pre>\n<h3>3.2. Calculating Moving Averages<\/h3>\n<p>\n        Here\u2019s how to calculate moving averages based on the collected data.\n    <\/p>\n<pre>\n        <code>\n        # Calculating 50-day and 200-day moving averages\n        df['MA50'] = df['close'].rolling(window=50).mean()\n        df['MA200'] = df['close'].rolling(window=200).mean()\n\n        # Generating signals\n        df['signal'] = 0\n        df.loc[df['MA50'] &gt; df['MA200'], 'signal'] = 1\n        df.loc[df['MA50'] &lt; df['MA200'], 'signal'] = -1\n        <\/code>\n    <\/pre>\n<h3>3.3. Executing Trades<\/h3>\n<p>\n        The code to execute trades based on signals is as follows.<br \/>\n        Since real trades will take place, it should be used cautiously after thorough testing.\n    <\/p>\n<pre>\n        <code>\n        # Trade execution function\n        def execute_trade(signal):\n            if signal == 1:\n                print(\"Executing buy\")\n                # binance.create_market_buy_order('BTC\/USDT', amount)\n            elif signal == -1:\n                print(\"Executing sell\")\n                # binance.create_market_sell_order('BTC\/USDT', amount)\n\n        # Executing trades based on the last signal\n        last_signal = df.iloc[-1]['signal']\n        execute_trade(last_signal)\n        <\/code>\n    <\/pre>\n<h2>4. Introduction to PyQt and Qt Designer<\/h2>\n<p>\n        PyQt is a library that allows you to use the Qt framework in Python.<br \/>\n        Qt Designer is a tool that helps you easily create GUI (Graphical User Interface).<br \/>\n        It allows for the easy design of a visual interface, including fields for user input.\n    <\/p>\n<h3>4.1. Installing PyQt<\/h3>\n<p>\n        To install PyQt, enter the following command.\n    <\/p>\n<pre>\n        <code>\n        pip install PyQt5\n        <\/code>\n    <\/pre>\n<h3>4.2. Installing Qt Designer<\/h3>\n<p>\n        Qt Designer is part of PyQt and is installed along with it.<br \/>\n        It can be used within the IDE and offers an intuitive visual tool for GUI design.\n    <\/p>\n<h3>4.3. Creating a Basic GUI Structure<\/h3>\n<p>\n        You can generate a UI file via Qt Designer and then convert it into Python code for use.<br \/>\n        The following example shows how to create a basic window.\n    <\/p>\n<pre>\n        <code>\n        from PyQt5.QtWidgets import QApplication, QMainWindow\n        import sys\n\n        class MyWindow(QMainWindow):\n            def __init__(self):\n                super(MyWindow, self).__init__()\n                self.setWindowTitle(\"Automated Trading System\")\n\n        app = QApplication(sys.argv)\n        window = MyWindow()\n        window.show()\n        sys.exit(app.exec_())\n        <\/code>\n    <\/pre>\n<h2>5. Integrating the Automated Trading System with the UI<\/h2>\n<p>\n        Now let&#8217;s integrate the automated trading algorithm we created earlier with the GUI.<br \/>\n        We will add functionality to execute trades when a button is clicked in the UI.\n    <\/p>\n<pre>\n        <code>\n        from PyQt5.QtWidgets import QApplication, QMainWindow, QPushButton, QLabel\n        import sys\n\n        class MyWindow(QMainWindow):\n            def __init__(self):\n                super(MyWindow, self).__init__()\n                self.setWindowTitle(\"Automated Trading System\")\n\n                self.label = QLabel(\"Status: Waiting\", self)\n                self.label.setGeometry(50, 50, 200, 50)\n\n                self.btn_execute = QPushButton(\"Execute Trade\", self)\n                self.btn_execute.setGeometry(50, 100, 200, 50)\n                self.btn_execute.clicked.connect(self.execute_trade)\n\n            def execute_trade(self):\n                # Execute the trading algorithm here.\n                self.label.setText(\"Status: Executing Trade\")\n\n        app = QApplication(sys.argv)\n        window = MyWindow()\n        window.show()\n        sys.exit(app.exec_())\n        <\/code>\n    <\/pre>\n<h2>6. Conclusion<\/h2>\n<p>\n        Today we learned about developing an automated trading system using Python and designing a UI with PyQt and Qt Designer.<br \/>\n        Leveraging an automated trading system allows for efficient trading, and PyQt makes it easy to design a user-friendly interface.<br \/>\n        I encourage you to further explore various strategies and advanced features.\n    <\/p>\n<h3>6.1. Additional Resources<\/h3>\n<ul>\n<li><a href=\"https:\/\/www.ccxt.trade\/\">CCXT Documentation<\/a><\/li>\n<li><a href=\"https:\/\/pandas.pydata.org\/docs\/\">Pandas Documentation<\/a><\/li>\n<li><a href=\"https:\/\/matplotlib.org\/stable\/contents.html\">Matplotlib Documentation<\/a><\/li>\n<li><a href=\"https:\/\/doc.qt.io\/qt-5\/qtwoverview.html\">Qt for Python Documentation<\/a><\/li>\n<\/ul>\n<h3>6.2. Questions and Feedback<\/h3>\n<p>If you have any questions or feedback, please feel free to leave a comment. Thank you!<\/p>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Automated trading is a system that automatically executes trades in financial markets based on algorithms. This eliminates the emotional judgment of investors and enables faster and more accurate trading. In this course, we will cover how to develop an automated trading system using Python, and introduce how to utilize PyQt and Qt Designer to build &hellip; <a href=\"https:\/\/atmokpo.com\/w\/37357\/\" class=\"more-link\">\ub354 \ubcf4\uae30<span class=\"screen-reader-text\"> &#8220;Automated Trading Development with Python, Introduction to PyQt and Qt Designer&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[147],"tags":[],"class_list":["post-37357","post","type-post","status-publish","format-standard","hentry","category-python-auto-trading"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Automated Trading Development with Python, Introduction to PyQt and Qt Designer - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/atmokpo.com\/w\/37357\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Automated Trading Development with Python, Introduction to PyQt and Qt Designer - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"og:description\" content=\"Automated trading is a system that automatically executes trades in financial markets based on algorithms. This eliminates the emotional judgment of investors and enables faster and more accurate trading. In this course, we will cover how to develop an automated trading system using Python, and introduce how to utilize PyQt and Qt Designer to build &hellip; \ub354 \ubcf4\uae30 &quot;Automated Trading Development with Python, Introduction to PyQt and Qt Designer&quot;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/atmokpo.com\/w\/37357\/\" \/>\n<meta property=\"og:site_name\" content=\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"article:published_time\" content=\"2024-11-01T09:56:57+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-11-01T11:51:08+00:00\" \/>\n<meta name=\"author\" content=\"root\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@bebubo4\" \/>\n<meta name=\"twitter:site\" content=\"@bebubo4\" \/>\n<meta name=\"twitter:label1\" content=\"\uae00\uc4f4\uc774\" \/>\n\t<meta name=\"twitter:data1\" content=\"root\" \/>\n\t<meta name=\"twitter:label2\" content=\"\uc608\uc0c1 \ub418\ub294 \ud310\ub3c5 \uc2dc\uac04\" \/>\n\t<meta name=\"twitter:data2\" content=\"4\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/atmokpo.com\/w\/37357\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/37357\/\"},\"author\":{\"name\":\"root\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7\"},\"headline\":\"Automated Trading Development with Python, Introduction to PyQt and Qt Designer\",\"datePublished\":\"2024-11-01T09:56:57+00:00\",\"dateModified\":\"2024-11-01T11:51:08+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/atmokpo.com\/w\/37357\/\"},\"wordCount\":592,\"publisher\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\"},\"articleSection\":[\"Python Auto Trading\"],\"inLanguage\":\"ko-KR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/atmokpo.com\/w\/37357\/\",\"url\":\"https:\/\/atmokpo.com\/w\/37357\/\",\"name\":\"Automated Trading Development with Python, Introduction to PyQt and Qt Designer - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#website\"},\"datePublished\":\"2024-11-01T09:56:57+00:00\",\"dateModified\":\"2024-11-01T11:51:08+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/atmokpo.com\/w\/37357\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/atmokpo.com\/w\/37357\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/atmokpo.com\/w\/37357\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\ud648\",\"item\":\"https:\/\/atmokpo.com\/w\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Automated Trading Development with Python, Introduction to PyQt and Qt Designer\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/atmokpo.com\/w\/#website\",\"url\":\"https:\/\/atmokpo.com\/w\/\",\"name\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/atmokpo.com\/w\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ko-KR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\",\"name\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"url\":\"https:\/\/atmokpo.com\/w\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png\",\"contentUrl\":\"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png\",\"width\":400,\"height\":400,\"caption\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\"},\"image\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/bebubo4\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7\",\"name\":\"root\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g\",\"caption\":\"root\"},\"sameAs\":[\"http:\/\/atmokpo.com\/w\"],\"url\":\"https:\/\/atmokpo.com\/w\/author\/root\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Automated Trading Development with Python, Introduction to PyQt and Qt Designer - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/atmokpo.com\/w\/37357\/","og_locale":"ko_KR","og_type":"article","og_title":"Automated Trading Development with Python, Introduction to PyQt and Qt Designer - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","og_description":"Automated trading is a system that automatically executes trades in financial markets based on algorithms. This eliminates the emotional judgment of investors and enables faster and more accurate trading. In this course, we will cover how to develop an automated trading system using Python, and introduce how to utilize PyQt and Qt Designer to build &hellip; \ub354 \ubcf4\uae30 \"Automated Trading Development with Python, Introduction to PyQt and Qt Designer\"","og_url":"https:\/\/atmokpo.com\/w\/37357\/","og_site_name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","article_published_time":"2024-11-01T09:56:57+00:00","article_modified_time":"2024-11-01T11:51:08+00:00","author":"root","twitter_card":"summary_large_image","twitter_creator":"@bebubo4","twitter_site":"@bebubo4","twitter_misc":{"\uae00\uc4f4\uc774":"root","\uc608\uc0c1 \ub418\ub294 \ud310\ub3c5 \uc2dc\uac04":"4\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/atmokpo.com\/w\/37357\/#article","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/37357\/"},"author":{"name":"root","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7"},"headline":"Automated Trading Development with Python, Introduction to PyQt and Qt Designer","datePublished":"2024-11-01T09:56:57+00:00","dateModified":"2024-11-01T11:51:08+00:00","mainEntityOfPage":{"@id":"https:\/\/atmokpo.com\/w\/37357\/"},"wordCount":592,"publisher":{"@id":"https:\/\/atmokpo.com\/w\/#organization"},"articleSection":["Python Auto Trading"],"inLanguage":"ko-KR"},{"@type":"WebPage","@id":"https:\/\/atmokpo.com\/w\/37357\/","url":"https:\/\/atmokpo.com\/w\/37357\/","name":"Automated Trading Development with Python, Introduction to PyQt and Qt Designer - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/#website"},"datePublished":"2024-11-01T09:56:57+00:00","dateModified":"2024-11-01T11:51:08+00:00","breadcrumb":{"@id":"https:\/\/atmokpo.com\/w\/37357\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/atmokpo.com\/w\/37357\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/atmokpo.com\/w\/37357\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\ud648","item":"https:\/\/atmokpo.com\/w\/en\/"},{"@type":"ListItem","position":2,"name":"Automated Trading Development with Python, Introduction to PyQt and Qt Designer"}]},{"@type":"WebSite","@id":"https:\/\/atmokpo.com\/w\/#website","url":"https:\/\/atmokpo.com\/w\/","name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","description":"","publisher":{"@id":"https:\/\/atmokpo.com\/w\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/atmokpo.com\/w\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ko-KR"},{"@type":"Organization","@id":"https:\/\/atmokpo.com\/w\/#organization","name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","url":"https:\/\/atmokpo.com\/w\/","logo":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/","url":"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png","contentUrl":"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png","width":400,"height":400,"caption":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8"},"image":{"@id":"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/bebubo4"]},{"@type":"Person","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7","name":"root","image":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g","caption":"root"},"sameAs":["http:\/\/atmokpo.com\/w"],"url":"https:\/\/atmokpo.com\/w\/author\/root\/"}]}},"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/37357","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/comments?post=37357"}],"version-history":[{"count":1,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/37357\/revisions"}],"predecessor-version":[{"id":37358,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/37357\/revisions\/37358"}],"wp:attachment":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/media?parent=37357"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/categories?post=37357"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/tags?post=37357"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}