Pesanan Auto Pending Menggunakan RSI di MetaTrader 4

Mike 2014.08.12 22:46 14 0 0
Lampiran
  1. Pesanan pending auto menggunakan RSI;
  2. Risiko lebih rendah pada hujung minggu dan pulihkan posisi pada minggu depan;
  3. Hantar maklumat berguna melalui emel.

Cadangan:

1. Tetapkan testmode kepada true untuk backtest, dan false untuk mod sebenar:

extern bool testmode = false;//true: untuk backtest

2. Jika dalam mod testmode, sila tetapkan hanya satu simbol dagangan dalam array, contohnya:

extern string tradesymbol1 = "EURUSDm_802_2802_1602_200_860";
extern string tradesymbol2 = "";
extern string tradesymbol3 = "";
extern string tradesymbol4 = "";
extern string tradesymbol5 = "";
extern string tradesymbol6 = "";

Jika dalam mod akaun sebenar, tetapkan testmode false, dan konfigurasi tradesymbol seperti (gunakan "," untuk memisahkan simbol, gunakan "_" untuk memisahkan parameter simbol):

extern string tradesymbol1 = "EURUSDm_802_2802_1602_200_860,USDCHFm_506_2606_1506_120_600";
extern string tradesymbol2 = "USDJPYm_460_2802_1302_100_320";
extern string tradesymbol3 = "";
extern string tradesymbol4 = "";
extern string tradesymbol5 = "";
extern string tradesymbol6 = "";

EURUSDm_802_2802_1602_200_860 bermaksud:

  • simbol: EURUSDm(m bermaksud akaun mini Exness saya, mungkin anda perlu mengubah kepada simbol anda sendiri)
  • pendingpips:802(jarak pending)
  • weekendpluspips:2802(jarak tambahan pada hujung minggu)
  • cancelpips:1602(jika jarak melebihi pips ini, tutup pesanan pending)
  • trailingsl:200(trailing stop loss)
  • takeprofit:860(take profit maya)

3. Jika anda ingin memadam pesanan pending pada hujung minggu, tetapkan weekenddelete=true, sebaliknya jika anda ingin meluaskan jarak pending dan memulihkannya pada minggu depan, sila tetapkan weekenddelete=false.

extern bool weekenddelete = false;//true:padam false:ubah

4. Masa mula dan tamat mod hujung minggu (5 bermaksud Jumaat, 7 bermaksud Ahad (masa adalah GMT, mungkin anda perlu menyesuaikan dengan masa tempatan anda, parameter lalai berfungsi dengan baik dalam Waktu Beijing):

//masa tamat dagangan pada hari Jumaat
extern int weekendbeginday = 5;
extern string weekendbegintime = "20:30";//jumaat 20:30
extern int weekendendday = 7;
extern string weekendendtime = "23:30";//ahad 20:30

5. Semua simbol (mungkin bukan simbol dagangan) yang anda ingin hantar nilai RSI prompt (>70 atau <30) dan laporkan secara berkala kepada anda. Jelas, anda perlu mengubah AUDJPYm jika akaun anda bukan mini.

string symbolsstr1 = "AUDJPYm,AUDCADm,AUDCHFm,AUDNZDm,AUDSGDm,AUDUSDm,CADCHFm,CADHKDm,CADJPYm,CHFJPYm,CHFPLNm,CHFSGDm,EURAUDm,EURBRLm,EURCADm,EURCHFm,EURDKKm,EURGBPm,EURHKDm,EURHUFm,EURJPYm,EURMXNm";
string symbolsstr2 = "GBPCHFm,GBPJPYm,GBPNZDm,GBPUSDm,HKDJPYm,HUFJPYm,MXNJPYm,NZDCADm,NZDCHFm,NZDJPYm,NZDSGDm,NZDUSDm,SGDJPYm,USDBRLm,USDCADm,USDCHFm,USDCZKm,USDDKKm,USDHKDm,USDHUFm,USDJPYm,USDMXNm";
string symbolsstr3 = "EURNOKm,EURNZDm,EURPLNm,EURRUBm,EURSEKm,EURSGDm,EURTRYm,EURUSDm,EURZARm,GBPAUDm,GBPCADm,USDNOKm,USDPLNm,USDRONm,USDRUBm,USDSEKm,USDSGDm,USDTRYm,USDZARm,XAGUSDm,XAUUSDm,ZARJPYm";
long sendmininterval = 3600;

 6. Konfigurasi RSI:

//rsi
extern int rsitimeframe = PERIOD_H4;
extern int rsiperiod = 14;
extern ENUM_APPLIED_PRICE rsiappliedprice = PRICE_CLOSE;
extern int rsishift = 0;
extern double rsiupperline = 70;
extern double rsilowerline = 30;

7. Gunakan magicweekendexpiration untuk mengenal pasti mod hujung minggu, jika sesiapa mempunyai cara yang lebih baik, sila maklumkan kepada saya

int magicweekendexpiration = 1577836800;//2020-1-1 0:0:0 intvalue:1577836800

8. Lain-lain:

Jika pengubahsuaian kepada mod hujung minggu gagal, EA akan menghantar emel dan mencuba MAX_MODIFY_TRY_TIME(100 lalai) kali sehingga berjaya.

Tiada stop loss yang diterapkan, dan jika pesanan kerugian kecil (minimum beli atau maksimum jual) bagi satu simbol melebihi pendingpips, EA akan meletakkan pesanan lain bagi simbol yang sama.

Dalam mod ujian, jika ekuiti kurang daripada 95% daripada baki, EA akan menulis status ke dalam fail amaran.

if(((AccountEquity()/AccountBalance()) < 0.95))
        {
            WriteToWarningFile();
        }

Jika anda menjumpai sebarang pepijat atau mempunyai cadangan, sila maklumkan kepada saya.

Senarai
Komen 0