항상 감사드립니다.
아래 청산식이 10시이후에 조건충족시 매수청산이든,매도청산이든 한번만 나오도록 수정하고자 합니다.
10시이후에 아래 청산식을 1번만 나오게한뒤(매수청산또는 매도청산)
###################################################
##### 매일 10:00 이후 480거래선 1번째 돌파청산 #####
###################################################
if stime >= 100000 and stime < 151500 Then{
if MarketPosition == 1 and #매수진입중
CrossDown(c,Var480) and #현재 거래선 데드발생
countif(CrossDown(c,Var480),BarsSinceEntry) == 1 Then #진입이후 첫번번째 발생한 데드
exitlong("eB_10hr_480");
if MarketPosition == -1 and #매도진입중
CrossUp(c,Var480) and #현재 골드발생
countif(CrossUp(c,Var480),BarsSinceEntry) == 1 Then #진입이후 젓번번째 발생한 골드
ExitShort("eS_10hr_480");
}
그다음 부터는 아래청산식이 나오게 하고 싶습니다.(반복청산)
if stime >= 100000 and stime < 151500 Then{
if MarketPosition == 1 and c<Var480 and var480>var480[1] Then
exitlong("eB_480");
if MarketPosition == -1 and c>Var480 and var480<var480[1] Then
ExitShort("eS_480");
감사합니다
답변 1
예스스탁
예스스탁 답변
2020-11-10 10:21:51
안녕하세요
예스스탁입니다.
var : Xcond(False);
if Bdate != Bdate[1] Then
Xcond = False;
if stime >= 100000 and stime < 151500 Then
{
if Xcond == False and
MarketPosition == 1 and #매수진입중
CrossDown(c,Var480) and #현재 거래선 데드발생
countif(CrossDown(c,Var480),BarsSinceEntry) == 1 Then #진입이후 첫번번째 발생한 데드
{
Xcond = true;
exitlong("eB_10hr_480");
}
if Xcond == False and
MarketPosition == -1 and #매도진입중
CrossUp(c,Var480) and #현재 골드발생
countif(CrossUp(c,Var480),BarsSinceEntry) == 1 Then #진입이후 젓번번째 발생한 골드
{
Xcond = true;
ExitShort("eS_10hr_480");
}
if Xcond == true Then
{
if MarketPosition == 1 and c<Var480 and var480>var480[1] Then
exitlong("eB_480");
if MarketPosition == -1 and c>Var480 and var480<var480[1] Then
ExitShort("eS_480");
}
}
즐거운 하루되세요
> 조민철 님이 쓴 글입니다.
> 제목 : 청산신호 수정
> 항상 감사드립니다.
아래 청산식이 10시이후에 조건충족시 매수청산이든,매도청산이든 한번만 나오도록 수정하고자 합니다.
10시이후에 아래 청산식을 1번만 나오게한뒤(매수청산또는 매도청산)
###################################################
##### 매일 10:00 이후 480거래선 1번째 돌파청산 #####
###################################################
if stime >= 100000 and stime < 151500 Then{
if MarketPosition == 1 and #매수진입중
CrossDown(c,Var480) and #현재 거래선 데드발생
countif(CrossDown(c,Var480),BarsSinceEntry) == 1 Then #진입이후 첫번번째 발생한 데드
exitlong("eB_10hr_480");
if MarketPosition == -1 and #매도진입중
CrossUp(c,Var480) and #현재 골드발생
countif(CrossUp(c,Var480),BarsSinceEntry) == 1 Then #진입이후 젓번번째 발생한 골드
ExitShort("eS_10hr_480");
}
그다음 부터는 아래청산식이 나오게 하고 싶습니다.(반복청산)
if stime >= 100000 and stime < 151500 Then{
if MarketPosition == 1 and c<Var480 and var480>var480[1] Then
exitlong("eB_480");
if MarketPosition == -1 and c>Var480 and var480<var480[1] Then
ExitShort("eS_480");
감사합니다