커뮤니티
골든크로스 수식 수정 부탁드립니다.
2018-01-18 21:55:59
140
글번호 115908
아래의 수식을 적용해 보았습니다.
매수가 거의 발생하지 않네요. 어느 부분의 문제인지 찾기가 어려워서
재차 문의 드립니다.
하루 이내에서는 1회만 매수되는 정도만 되어도 될거 같은데요......
번거로우시겠지만 한번 더 봐주시면 감사하겠습니다.
- 아 래 -
var : entry(false),cond(false);
if bdate != bdate[1] Then
entry = true;
if CurrentContracts > CurrentContracts[1] Then
entry = false;
var1 = ma(C,5);
var2 = ma(C,20);
var3 = ma(C,60);
if sdate >= 지정일 and CrossUp(var1, var2) and var3 > var3[1] and entry == true Then
Buy("매수",OnClose,def,Floor(금액/C));
if MarketPosition == 1 and entry == true Then
{
if MaxEntries == 3 and C <= AvgEntryPrice*0.75 Then
cond = true;
if !(CrossUp(var1, var2) and var3 > var3[1]) and
((cond == false and MaxEntries >= 1 and MaxEntries < 3) or
(cond == true and MaxEntries >= 3 and MaxEntries < 6)) then
Buy("매수1",OnClose,def,Floor(금액/C));
}
답변 1
예스스탁 예스스탁 답변
2018-01-19 10:58:33
안녕하세요
예스스탁입니다.
첨부된 그림과 같이하루에 한번만 신호가 발생합니다.
수식을 어느부분을 추가로 수정해 드려야 할지 잘 모르겠습니다.
도움을 드리지 못해 죄송합니다.
아래와 같이 지정일과 금액을 지정하고 적용했습니다.
input : 지정일(20180101),금액(1000000);
var : entry(false),cond(false);
if bdate != bdate[1] Then
entry = true;
if CurrentContracts > CurrentContracts[1] Then
entry = false;
var1 = ma(C,5);
var2 = ma(C,20);
var3 = ma(C,60);
if sdate >= 지정일 and CrossUp(var1, var2) and var3 > var3[1] and entry == true Then
Buy("매수",OnClose,def,Floor(금액/C));
if MarketPosition == 1 and entry == true Then
{
if MaxEntries == 3 and C <= AvgEntryPrice*0.75 Then
cond = true;
if !(CrossUp(var1, var2) and var3 > var3[1]) and
((cond == false and MaxEntries >= 1 and MaxEntries < 3) or
(cond == true and MaxEntries >= 3 and MaxEntries < 6)) then
Buy("매수1",OnClose,def,Floor(금액/C));
}
즐거운 하루되세요
> 승부사1 님이 쓴 글입니다.
> 제목 : 골든크로스 수식 수정 부탁드립니다.
> 아래의 수식을 적용해 보았습니다.
매수가 거의 발생하지 않네요. 어느 부분의 문제인지 찾기가 어려워서
재차 문의 드립니다.
하루 이내에서는 1회만 매수되는 정도만 되어도 될거 같은데요......
번거로우시겠지만 한번 더 봐주시면 감사하겠습니다.
- 아 래 -
var : entry(false),cond(false);
if bdate != bdate[1] Then
entry = true;
if CurrentContracts > CurrentContracts[1] Then
entry = false;
var1 = ma(C,5);
var2 = ma(C,20);
var3 = ma(C,60);
if sdate >= 지정일 and CrossUp(var1, var2) and var3 > var3[1] and entry == true Then
Buy("매수",OnClose,def,Floor(금액/C));
if MarketPosition == 1 and entry == true Then
{
if MaxEntries == 3 and C <= AvgEntryPrice*0.75 Then
cond = true;
if !(CrossUp(var1, var2) and var3 > var3[1]) and
((cond == false and MaxEntries >= 1 and MaxEntries < 3) or
(cond == true and MaxEntries >= 3 and MaxEntries < 6)) then
Buy("매수1",OnClose,def,Floor(금액/C));
}