답변완료
오류와 Data2
빠른 답변 감사드립니다.
한가지만 더 어레이인 경우
이전
var : i(0); // For 반복
array : ATM[9](0); // 값
For i = 9 downto 0 {
Text1 = Text_New_Self(sDate, sTime, C, "값:" + NumToStr(ATM[i],2));
}
변경
var : i(0,Data1); // For 반복
array : ATM[9](0,Data1); // 값
For i = 9 downto 0 {
Text1 = Text_New_Self(sDate, sTime, C, "값:" + NumToStr(ATM[i],2));
}
이렇게 지정하는게 맞는지요?
2020-06-02
1668
글번호 139500
시스템
답변완료
도움 부탁드립니다.
안녕하세요? 수식 감사히 쓰고있습니다.
아래수식에서 수정할 부분이있어 도움부탁드립니다.
캔들과 진입봉과의 사이에 도지가있는 매매인데요,
중간에있는 도지를 1개로 설정했다고 가정한다면,
양봉 도지 음봉(진입봉) 매도
음봉 도지 양봉(진입봉) 매수 이렇게 매매가 이루어집니다.
여기에서,
양봉 도지 음봉(진입봉) 매도 --> 앞의 양봉보다 진입봉의 음봉이 클때만 매도진입
음봉 도지 양봉(진입봉) 매수 --> 앞의 음봉보다 진입봉의 양봉이 클때만 매수진입
이렇게 되도록 하고싶습니다.
도움부탁드립니다.
감사합니다.
input : N(3);
var : t1(0),t2(0),t3(0);
var : d1(0),d2(0),d3(0);
if C > O Then
T1 = 1;
else if C < O Then
T1 = -1;
Else
T1 = 0;
if T1 != T1[1] Then
{
T2 = T1[1];
T3 = T2[1];
d1 = abs(C-O);
d2 = d1[1];
d3 = d2[1];
}
if MarketPosition == 0 and
T1 == 1 and
T2 == 0 and
T3 == -1 and
T1[N+1] == -1 and
countif(T1 == 0,N)[1] == N and
d1 > d2 Then
buy();
if MarketPosition == 0 and
T1 == -1 and
T2 == 0 and
T3 == 1 and
T1[N+1] == 1 and
countif(T1 == 0,N)[1] == N and
d1 > d2 Then
sell();
input : 익절틱수(50),손절틱수(50);
SetStopProfittarget(PriceScale*익절틱수,PointStop);
SetStopLoss(PriceScale*손절틱수,PointStop);
2020-06-02
1747
글번호 139497
시스템
답변완료
역마틴게일 수정 문의
표제건 관련하여, 문의 드립니다.
아래 수식은 예스스탁의 수식게시판에서 찾은 내용입니다 (선물거래용인듯 하네여)
Q1. 수식수정
역마틴게일을 주식에 적용하려고, 매도조건은 지우고 간략하게 표현하고자합니다.
매수진입:" 이전 거래에서 수익이 나면 factor(2)배 만큼 매수" 아니라면 기본수량 진입(size)
매수청산: 진입한 수량만큼 청산
Q2. 하기의 signal이란 게 무엇을 의미하는지 잘 이해가 안가서 직접수정이 어렵네요.
marketposition과 비슷한 용도 인것 같기는 한데, 함수도 아니고,
signal < 1 은 어떤 조건을 의미할까요? ( no 포지션 or 매수포지션?)
---아래 수식은 예스스탁의 수식게시판에서 찾은 내용입니다---
input: faster(5), slower(20), size(1), factor(2.0),maxcont(10);
vars: mafast(0), maslow(0), ncontr(0),signal(0),XCommission(0),XSlippage(0);
mafast = average(close, faster);
maslow = average(close, slower);
XCommission = c*(ExitCommission/100); #%설정
XSlippage = ExitSlippage; #Pt설정
if mafast > maslow then {
if signal == -1 then {//매도 포지션일때??
exitshort(); //매도 청산
signal = 0; // 무포일때
if (PositionProfit-(XCommission+XSlippage)*CurrentContracts) > 0 then //수익났을때
ncontr = intportion(ncontr*factor); // 매수 수량 늘려줌.
else
ncontr = size; // 수익아니면 매수 수량 동일
}
if signal < 1 then {
Buy("B", onclose,def,min(ncontr,maxcont));
signal = 1; //매수 포지션으로 정의
}
}
if mafast < maslow then {
if signal == 1 then {// 매수 포지션일때,??
exitlong();
signal = 0; // 무포로 정의
if (PositionProfit-(XCommission+XSlippage)*CurrentContracts) > 0 then // 수익일때,
ncontr = intportion(ncontr*factor);// 매도 수량 늘려줌.
else
ncontr = size;// 수익아니면 매도 수량 동일
}
if signal > -1 then {
Sell("S", onclose,def, min(ncontr,maxcont) ); // 매도 진입
signal = -1; //매도 포지션으로 정의
}
}
2020-06-02
1930
글번호 139492
시스템
답변완료
수식 문의드립니다
분봉을 이용하였을때
장이 시작되면 초기화되고
최근 5개(Input으로 최적화시키게) 봉 중에서 양봉인 경우 위꼬리(H-C)를 저장, 음봉인경우 아래꼬리(C-L)를 저장
양봉개수만큼 위꼬리들을 더하고, 음봉개수만큼 아래꼬리들을 더하고 싶습니다.
Input : CountMax(4);
Var : Count(0), HighTail(0), LowTail(0), HighTailAccum(0), LowTailAccum(0);
For Count = 0 to Countmax Begin
If C > O then
HighTail = H - C;
HighTailAccum = HighTailAccum + HighTail;
If C < O then
LowTail = C - L;
LowTailAccum = LowTailAccum + LowTail;
End;
이런식으로 생각해보았는데 date != date[1]일때 어떤 값을 초기화시켜야 하는지, HighTailAccum이 계속 누적되니 HighTail을 Array 변수로 빼서 배열시켜야 할 것 같긴한데..
어렵네요..
장 시작부터 양양음양음 / 양양양양양 이라면
5개봉까지는 134번의 윗꼬리를, 6번부터는 246번의 윗꼬리를, 7번부터는 467번의 윗꼬리를
더하는 식으로 만들고 싶습니다.
2020-06-02
1548
글번호 139481
시스템