답변완료
수식관련 문의드립니다.
저번에 설정해 주신 수식으로 진행을 하는데 첨부한 파일의 그림처럼
시뮬레이션이 초기에만 진행이되다 매매진행이 안되는 것같습니다.
확인한번해주시면 감사하겠습니다.
> 안녕하세요
예스스탁입니다.
청산함수에 이름을 지정하면 해당진입만 청산이 됩니다.
또한 청산에 각 진입별로 진입가를 사용하도록 변경했습니다.
Input : short(12), long(26), signal(9);
Var : MACDV(0) , MACDsig(0),EP1(0),EP2(0);
MACDV = MACD(short, long);
MACDsig = ema(MACDV,signal);
if CrossUp(MACDv,MACDsig) Then
Buy("진입1");
if MarketPosition == 1 Then
{
if CurrentContracts > CurrentContracts[1] and LatestEntryName(0) == "진입1" Then
EP1 = LatestEntryPrice(0);
if CurrentContracts > CurrentContracts[1] and LatestEntryName(0) == "진입2" Then
EP2 = LatestEntryPrice(0);
if MaxEntries == 1 and C <= EntryPrice-300 and CrossUp(MACDv,MACDsig) Then
buy("진입2");
if MaxEntries == 1 and C >= EP1+30 and CrossDown(MACDv,MACDsig) Then
exitlong("청산1",OnClose,DEF,"진입1");
if MaxEntries == 2 and C >= EP2+10 and CrossDown(MACDv,MACDsig) Then
exitlong("청산2",OnClose,DEF,"진입2");
2021-03-09
952
글번호 146906
시스템
답변완료
문의
var : K1(0,data2),K2(0,data2),K3(0,data2);
K1 = data2(ma(c,10))
K2 = data2(ma(c,15))
K3 = data2(ma(c,20))
Q1 = crossdown(k1,k2)할 때 data1(c)
Q2 = crossdown(k1,k3)할 때 data1(c)
W1 = 절대값(Q1-Q2)
if crossdown(K1,K3) then
sell();
if Q2 - W1 then # 진입가에서 W1 이익을 냈을 때 청산
exitshort();
수식을 완성하여 주십시요.
2021-03-09
724
글번호 146894
시스템