【ผลลัพธ์ประจําสัปดาห์นี้ & ChatGPT】ลองจัดการพอร์ตโฟลิโอ EA ฟรีของคุณ 2 (15-19 May 2023)

การจัดการพอร์ตโฟลิโอ,มินิรีวิว ChatGPT,แฟ้มสะสมผลงาน 2

นิรีวิว – เราถาม ChatGPT!                                                                                                                                                                                                                                     

ครั้งนี้ขอแนะนำโปรแกรม MT5 ที่เขียนโดย ChatGPT หากเป็นโปรแกรมธรรมดาดูเหมือนว่าจะใช้ MT5 ได้

ถาม: ด้วย MT5EA โปรดเขียนโปรแกรมที่ “ปิดตำแหน่งทั้งหมดเมื่อกำไรรวมถึงระดับหนึ่ง" นอกจากนี้ คู่สกุลเงินทั้งหมดจะใช้สำหรับการชำระบัญชีz

เพิ่มคำแนะนำ
· โปรดระบุ “เมื่อกำไรรวมถึง 1,000 หน่วยขึ้นไป" ด้วยตัวแปรภายนอก
· ตั้งชื่อ EA เป็น “ProfitClose"

คอมไพล์ไม่สำเร็จโดยมีข้อผิดพลาดบางประการ ⇔ ในแต่ละกรณี ให้แจ้งเนื้อหาของข้อผิดพลาดตามที่เป็น

ปกติฉันจะยอมแพ้เพราะความผิดพลาด แต่คราวนี้ผ่านไปด้วยดี!

ตอบ: การตอบสนองของ ChatGPT: https://chat.openai.com/auth/login

MT5 (MetaTrader 5) อนุญาตให้สร้าง Expert Advisors (EAs) โดยใช้ภาษา MQL5 EA เป็นโปรแกรมสำหรับการเทรดอัตโนมัติ

EA ที่ตรงกับความต้องการของคุณจะมีลักษณะดังนี้: อย่างไรก็ตาม รหัสนี้จะใช้เพื่อปิดสถานะทั้งหมด ใช้งานได้เฉพาะเมื่อกำไรถึงค่าที่กำหนดหรือมากกว่านั้น

ในตัวอย่างด้านล่าง เราจะปิดตำแหน่งทั้งหมดเมื่อกำไรรวมของทุกตำแหน่งคือ 1,000 หน่วยขึ้นไป หน่วยนี้ขึ้นอยู่กับสกุลเงินที่คุณใช้ MT5

//+------------------------------------------------------------------+
//|                                                  ProfitClose.mq5 |
//|                        Copyright 2023, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "2023, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"

// Set default profit threshold to 1000
input double ProfitThreshold = 1000; 

//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---

  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
   double total_profit = 0;
   for(int i=PositionsTotal()-1; i>=0; i--)
     {
      ulong ticket = PositionGetTicket(i);
      if(ticket > 0)
        {
         total_profit += PositionGetDouble(POSITION_PROFIT);
        }
     }
   
   if(total_profit >= ProfitThreshold) // Use the external variable here
     {
      for(int i=PositionsTotal()-1; i>=0; i--)
        {
         ulong ticket = PositionGetTicket(i);
         if(ticket > 0)
           {
            MqlTradeRequest request;
            MqlTradeResult result;
            
            ZeroMemory(request);

            request.action = TRADE_ACTION_DEAL; 
            request.symbol = PositionGetString(POSITION_SYMBOL); 
            request.volume = PositionGetDouble(POSITION_VOLUME); 
            request.type = PositionGetInteger(POSITION_TYPE) == POSITION_TYPE_BUY ? ORDER_TYPE_SELL : ORDER_TYPE_BUY;
            request.price = request.type == ORDER_TYPE_BUY ? SymbolInfoDouble(request.symbol, SYMBOL_ASK) : SymbolInfoDouble(request.symbol, SYMBOL_BID);
            request.deviation = 20; 
            request.magic = 123456; 
            request.comment = "Close position"; 
            request.position = PositionGetInteger(POSITION_TICKET); 

            if(!OrderSend(request, result))
            {
              Print("OrderSend failed with error ",GetLastError());
            }
            else
            {
              Print("OrderSend succeeded, deal performed with ticket #", result.deal);
            }
           }
        }
     }
  }
//+------------------------------------------------------------------+

คุณสามารถเปลี่ยนเกณฑ์กำไรได้โดยการปรับตัวแปร ProfitThreshold เมื่อเปิดใช้งาน EA หรือเปลี่ยนการตั้งค่า EA ค่าเริ่มต้นถูกกำหนดเป็น 1,000 แต่คุณสามารถเปลี่ยนเป็นค่าใดก็ได้

ทดสอบโค้ดนี้ในสภาพแวดล้อมสาธิตก่อนใช้งานเสมอ

มันสะดวก แต่ถ้าคุณพึ่งพามัน คุณจะไม่สามารถฝึกฝนทักษะการเขียนโปรแกรมของคุณได้

MQL5 ฟรี EA – NOZAX Portfolio No.2

NOZAX Portfolio No.2
  • บัญชี: NZX Zero (ECN) (NOZAX)
  • ยอดเงินเริ่มต้น: 100,000 เยน
  • ทํางาน EA:
  • TraderMind EA MT5: คู่สกุลเงิน: USDCAD#, กรอบเวลา: 1 ชั่วโมง, ปริมาณล็อต: 0.04 ล็อต
  • White Bear DT for NOZAX v1.13: คู่สกุลเงิน: USDJPY#, กรอบเวลา: 5 นาที, ปริมาณล็อต: 0.02 ล็อต
  • Gold Multiply Funds EA: คู่สกุลเงิน: XAUUSD#, กรอบเวลา: 30 นาที, ปริมาณล็อต: 0.01 ล็อต
  • Catastrofix EA MT5: คู่สกุลเงิน: EURBGP#, EURAUD#, EURNZD#, EURUSD#, GBPCAD#, AUDJPY#, กรอบเวลา: 1 ชั่วโมง, ปริมาณล็อต: 0.01 ล็อต

ผลลัพธ์ตั้งแต่วันที่ 15 ถึง 19 พฤษภาคม (NOZAX Portfolio No.2)

  • TraderMind EA MT5: ชนะ 1 และขาดทุน 1 ครั้ง กําไรและขาดทุนรวม -1737 เยน (-41.0pips).
  • White Bear DT USDJPY: ชนะ 8 และขาดทุน 2 ครั้ง กําไรและขาดทุนรวม -575 เยน (-22.7 pips).
  • Gold Multiply Funds EA: ชนะ 1 และขาดทุน 4 ครั้ง กําไรและขาดทุนรวม -3064 เยน (-2194pips).
  • Catastrofix EA MT5: ชนะ 7 และขาดทุน 6 ครั้ง กําไรและขาดทุนรวม 3861 เยน (401.7pips).

ผลลัพธ์ที่ผ่านมา(NOZAX Portfolio No.2)

ผลงานรายบุคคลของ EA แต่ละตัวในพอร์ตโฟลิโอหมายเลข 2 มีดังนี้

  • 10 April-19 May 2023
    (การซื้อขายที่มีกำไรแม้แต่ 1 เยนจะนับเป็น “ชนะ" ในขณะที่การย้อนกลับจะนับเป็น “ลบ")
  • ยอดคงเหลือ: 100,000 เยน → 100,487 เยน

สถานะปัจจุบันและกําหนดการของพอร์ตโฟลิโอ

Gold Multiply Funds EA เป็น EA ที่ซื้อขาย XAUUSD และฉันมีความหวังสูงสำหรับมัน แต่ผลลัพธ์ที่ได้กลับไม่ดีนักตั้งแต่เริ่มการทดสอบ EA นี้ดูเหมือนว่าจะใช้ AI เพื่อค้นหาจุดเริ่มต้น แต่ฉันรู้สึกว่าความแม่นยำของการคาดการณ์ของ AI กำลังลดลง

เพียงแต่ว่ามันไม่ตรงกับตลาด และไม่มีความเป็นไปได้ที่มันจะดีขึ้นในอนาคต ดังนั้นฉันจะลบมันออกจากพอร์ตโฟลิโอนี้ชั่วคราวและดูว่ามันจะเป็นยังไงกับบัญชีทดลอง

TraderMind EA MT5 และ White Bear DT ไม่อยู่ในสภาพที่ดี ดังนั้นมันจึงค่อนข้างน่ารำคาญ แต่สัปดาห์หน้าฉันจะพยายามเปลี่ยนพอร์ตโฟลิโอของฉันด้วยสองสิ่งนี้และ Catastrofix EA

NOZAX

โบรกเกอร์ MT5 FX ที่กำลังมาแรง [NOZAX] → → → คลิกที่นี่เพื่อดูรายละเอียด!

Posted by GOMA