예스스탁
예스스탁 답변
2021-08-03 18:51:58
안녕하세요
예스스탁입니다.
올려주신 내용에서 포물선이 어떤 값인지 알수 없습니다.
파라볼릭으로 대체해서 작성해 드립니다.
참고하셔서 수정보완해 사용하시기 바랍니다.
input : AF(0.02),maxaf(0.2);
input : sto1(10),sto2(5),sto3(5);
var : S1(0,Data1),S2(0,Data2),S3(0,data3);
var : K1(0,Data1),K2(0,Data2),K3(0,data3);
var : D1(0,Data1),D2(0,Data2),D3(0,data3);
var : Bcond(False,Data1),Scond(False,Data1);
var : BXcnt(0,Data1),SXcnt(0,Data1);
var : Tcond(false,Data1),st(0,Data1),xt(0,Data1);
var : Year(0,Data1),v1(0,Data1),v2(0,Data1),v3(0,Data1),v4(0,Data1),summer(False,Data1);
if Data1((sdate != sdate[1] and stime >= xt) or
(sdate == sdate[1] and stime >= xt and stime[1] < xt)) Then
Tcond = False;
if data1(bdate != bdate[1]) Then
{
Tcond = true;
Year = data1(Floor(bdate/10000));
V1 = (10000 * Year) + (100 * 3) + 1;
V2 = 15 - dayofweek(v1);
v3 = (10000 * Year) + (100 * 11) + 1;
v4 = 8 - dayofweek(v3);
Summer = bdate > (10000 * Year) + (100 * 3) + v2
And bdate < (10000 * Year) + (100 * 11) + v4;
if summer == true Then
{
st = 70000;
xt = 55000;
}
Else
{
st = 80000;
xt = 65000;
}
}
if xt > 0 and st > 0 Then
{
IF xt > st Then
SetStopEndofday(xt);
Else
{
if sDate != sDate[1] Then
SetStopEndofday(xt);
}
if Data1((sdate != sdate[1] and stime >= st) or
(sdate == sdate[1] and stime >= st and stime[1] < st)) Then
{
IF xt <= st Then
{
SetStopEndofday(0);
}
}
}
S1 = Data1(Sar(AF,maxAF));
S2 = Data2(Sar(AF,maxAF));
S3 = Data3(Sar(AF,maxAF));
K1 = Data1(StochasticsK(sto1,sto2));
D1 = Data1(StochasticsD(sto1,sto2,sto2));
K2 = Data2(StochasticsK(sto1,sto2));
D2 = Data2(StochasticsD(sto1,sto2,sto2));
K3 = Data3(StochasticsK(sto1,sto2));
D3 = Data3(StochasticsD(sto1,sto2,sto2));
Bcond = data1(C>S1) and data2(C>S2) and data3(C>S3);
Scond = data1(C<S1) and data2(C<S2) and data3(C<S3);
if Tcond == true Then
{
if Bcond == true and Bcond[1] == False Then
Buy("b",AtMarket);
if Scond == true and Scond[1] == False Then
Sell("s",AtMarket);
if MarketPosition == 1 Then
{
BXcnt = 0;
if data1(CrossUp(K1,D1) and K1>80) Then
BXcnt = BXcnt+1;
if data2(CrossUp(K2,D2) and K2>80) Then
BXcnt = BXcnt+1;
if data3(CrossUp(K3,D3) and K3>80) Then
BXcnt = BXcnt+1;
if BXcnt >= 2 Then
ExitLong("BX",AtMarket);
}
if MarketPosition == -1 Then
{
SXcnt = 0;
if data1(CrossDown(K1,D1) and K1<20) Then
SXcnt = SXcnt+1;
if data2(CrossDown(K2,D2) and K2<20) Then
SXcnt = SXcnt+1;
if data3(CrossDown(K3,D3) and K3<20) Then
SXcnt = SXcnt+1;
if SXcnt >= 2 Then
ExitShort("SX",AtMarket);
}
}
즐거운 하루되세요
> 흰둥이아빠 님이 쓴 글입니다.
> 제목 : 함수요청
> 안녕하세요?
아래 전략에 대해 스크립트 작성 요청드립니다.
- 나스닥 100 선물
- 주기: data1 5분, data2 30분,data3 60분
- 매수 : 3개의 주기에서 포물선이 주가 위에서 놀다가 아래로 전환될 때 완성 익봉 시가에 진입
- 매도 : 3개의 주기에서 포물선이 주가 아래에서 놀다가 위로 전환될 때 완성 익봉 시가에 진입
- 매수청산 : 3개의 주기중에서 스토케스틱 슬로우가 2개 주기 이상에서 과매수 구간에 있으면서 %K가 %D를 상향 돌파하는 완성 시점 익봉 시가에 청산
- 매도청산 : 3개의 주기중에서 스토케스틱 슬로우가 2개 주기 이상에서 과매도 구간에 있으면서 %K가 %D를 하향 이탈하는 완성 시점 익봉 시가에 청산
- 거래시간 : 오전 7시부터 오후 6시까지(써머타임 해지시 1시간씩 순연)