리소스 로딩... 로딩...

MyLanguage의 암호화 시장에서 사용하는 온도계 전략

저자:선함, 2020-08-21 19:19:20, 업데이트: 2023-10-10 21:15:32

Thermostat Strategy using on crypto market by MyLanguage

전략 이름: 업그레이드 된 온도계 전략

데이터 사이클: 1시간

지원: 재화 선물, 디지털 통화 선물, 디지털 통화 스팟

Thermostat Strategy using on crypto market by MyLanguage Thermostat Strategy using on crypto market by MyLanguage Thermostat Strategy using on crypto market by MyLanguage Thermostat Strategy using on crypto market by MyLanguage

  • 주요 차트: 위 트랙, 공식: TOP^^MAC+N_TMPTMP; / / 볼의 위 트랙 아래 트랙, 공식: BTTOM^^MAC-N_TMPTMP;//bol의 아래 트랙

  • 2차 차트: CMI, 공식: CMI: ABS ((C-REF ((C,N_CMI-1)) / ((HHV ((H,N_CMI) -LLV ((L,N_CMI)) * 100; //0-100 값이 커질수록 추세가 강해집니다. CMI <20는 오스실레이션, CMI>20는 추세입니다.

Thermostat Strategy using on crypto market by MyLanguage

소스 코드:

(*backtest
start: 2018-11-06 00:00:00
end: 2018-12-04 00:00:00
period: 1h
exchanges: [{"eid":"Futures_CTP","currency":"FUTURES"}]
*)
 
MAC:=MA(CLOSE,N);
TMP:=STD(CLOSE,N);
TOP^^MAC+N_TMP*TMP;// upper track of boll
BOTTOM^^MAC-N_TMP*TMP;// lower track of boll
BBOLL:=C>MAC;
SBOLL:=C<MAC;
N_CMI:=30;
 
CMI:ABS(C-REF(C,N_CMI-1))/(HHV(H,N_CMI)-LLV(L,N_CMI))*100;
//0-100 the larger the value, the stronger the trend, CMI <20 is oscillation mode, CMI>20 is the trend
 
N_KD:=9;
M1:=3;
M2:=3;
RSV:=(CLOSE-LLV(LOW,N_KD))/(HHV(HIGH,N_KD)-LLV(LOW,N_KD))*100;
//(1)closing price - the lowest of cycle N, (2)the highest of cycle N - the lowest of cycle N, (1)/(2)
K:=SMA(RSV,M1,1);//MA of RSV
D:=SMA(K,M2,1);//MA of K
MIND:=30;
BKD:=K>D AND D<MIND;
SKD:=K<D AND D>100-MIND;
 
//oscillation mode
BUYPK1:=CMI < 20 AND BKD;//if it's oscillation, buy to cover and buy long immediately
SELLPK1:=CMI < 20 AND SKD;//if it's oscillation, sell to close long position and sell short to open position immediately
 
//Disposal of the original oscillating position under the trend mode
SELLY1:=REF(CMI,BARSBK) < 20 AND C>BKPRICE*(1+0.01*STOPLOSS*3) AND K<D;//if it's oscillation, long position take profit
BUYY1:=REF(CMI,BARSSK) < 20 AND C<SKPRICE*(1-0.01*STOPLOSS*3) AND K>D;//if it's oscillation, short position take profit
 
//trend mode
BUYPK2:=CMI >= 20 AND C > TOP;//if it's trend, buy to cover and buy long immediately
SELLPK2:=CMI >= 20 AND C < BOTTOM;//if it's trend, sell to close long position and sell short to open position immediately
 
//Disposal of the original oscillating position under the trend mode
SELLY2:=REF(CMI,BARSBK) >= 20 AND C>BKPRICE*(1+0.01*STOPLOSS*3) AND SBOLL;//if it's trend, long position take profit
BUYY2:=REF(CMI,BARSSK) >= 20 AND C<SKPRICE*(1-0.01*STOPLOSS*3) AND BBOLL;//if it's trend, short position take profit
 
SELLS2:=REF(CMI,BARSBK) >= 20 AND C<BKPRICE*(1-0.01*STOPLOSS) AND SBOLL;//if it's trend, long position stop loss
BUYS2:=REF(CMI,BARSSK) >= 20 AND C>SKPRICE*(1+0.01*STOPLOSS) AND BBOLL;//if it's trend, short position stop loss
 
IF BARPOS>N THEN BEGIN
    BUYPK1,BPK;
    SELLPK1,SPK;
    BUYPK2,BPK;
    SELLPK2,SPK;
END
BUYY1,BP(SKVOL);
BUYY2,BP(SKVOL);
BUYS2,BP(SKVOL);
SELLY1,SP(BKVOL);
SELLY2,SP(BKVOL);
SELLS2,SP(BKVOL);

소스 코드:https://www.fmz.com/strategy/129086


관련 내용

더 많은 내용