답변완료
문의드립니다
Input:분봉(5);
Var:OO(0),HH(0),LL(0),TL1(0),TL2(0),TL3(0),TL4(0);
Value1 = 분봉/BarInterval;
Value2 = DayIndex()%Value1;
If Value2 == 0 Then {
OO = O;
HH = H;
LL = L;
}
Else {
HH = Max(HH,H);
LL = Min(LL,L);
}
If Value2 == Value1 - 1 or time==iff(CodeCategory()<3,150000,151500) then {
TL1 = TL_New(Date[Value2],sTime[Value2],LL,Date[Value2],sTime[Value2],HH);
TL2 = TL_New(Date[Value2],sTime[Value2],HH,Date,sTime,HH);
TL3 = TL_New(Date[Value2],sTime[Value2],LL,Date,sTime,LL);
TL4 = TL_New(Date,sTime,LL,Date,sTime,HH);
If OO <= C Then {
TL_SetColor(TL1,RED);
TL_SetColor(TL2,RED);
TL_SetColor(TL3,RED);
TL_SetColor(TL4,RED);
}
Else {
TL_SetColor(TL1,BLUE);
TL_SetColor(TL2,BLUE);
TL_SetColor(TL3,BLUE);
TL_SetColor(TL4,BLUE);
}
}
TL_SetSize(TL1,1);
TL_SetSize(TL2,1);
TL_SetSize(TL3,1);
TL_SetSize(TL4,1);
=============================================
위 수식을 응용해서요..
월봉을 주봉에 표현하고
주봉을 일봉에 표현하고
일봉을 360분봉에 표현하고
360분봉을 30분에 표현하고
30분을 5분에 표현하고
5분을 1분에 표현하게 변경 부탁드립니다...
해외선물 기준입니다... 시작시간을 고려하여 잘 부탁드리구요
사각형이 표현될때 좌측과 우측은 실선으로 부탁드립니다
그리고 항생지수는 기타 해외선물과 시간이 다르니 수식을 따로 부탁드립니다
2020-02-03
302
글번호 135591
지표
답변완료
수식문의 드립니다
var : CCIP(20),ATRP(5),Multiplier(1),original(true);
var : thisCCI(0),lastCCI(0),bufferDn(0),bufferUp(0);
var : 추세X_1분(0),swap(0),swap2(0),swap3(0),swap4_1분(0);
thisCCI = cci(CCIP);
lastCCI = thisCCI[1];
bufferDn = high + Multiplier * ma(TrueRange,ATRP);
bufferUp = low - Multiplier * ma(TrueRange,ATRP);
if (thisCCI >= 0 and lastCCI < 0) Then bufferUp = bufferDn[1];
if (thisCCI <= 0 and lastCCI > 0) Then bufferDn = bufferUp[1];
if (thisCCI >= 0) Then
{
if (bufferUp < bufferUp[1]) Then
bufferUp = bufferUp[1];
}
else
{
if (thisCCI <= 0) Then
if (bufferDn > bufferDn[1]) Then
bufferDn = bufferDn[1];
}
추세X_1분 = iff(thisCCI >= 0,bufferUp,iff(thisCCI <= 0,bufferDn,추세X_1분[1]));
swap=iff(추세X_1분>추세X_1분[1],1,iff(추세X_1분<추세X_1분[1],-1,swap[1]));
swap2 = iff(swap==1,1,-1);
swap3 = iff(thisCCI >=0,1,-1);
swap4_1분 = iff(original,swap3,swap2);
plot1(추세X_1분,"x",IFF(swap4_1분 > 0, MAGENTA,BLACK),DEF,8);
타주기를 사용하진 않고 위 수식을 1분봉에서 10봉에 표현하고 싶습니다.
항상 노고에 감사드립니다
2020-02-03
368
글번호 135586
지표
답변완료
부탁드립니다
수고하십니다
아래수식은 키움수식입나다 예스수식 으로 부탁드립니다
*수식
1수식Os=PriceOsc(shortPeriod,longPeriod);
Os1=Os>0 && Os> Os(1);
if(Os1,max(c,o),0);
2수식Os=PriceOsc(shortPeriod,longPeriod);
Os2=Os>0 && Os< Os(1);
if(Os2,max(c,o),0);
3수식Os=PriceOsc(shortPeriod,longPeriod);
Os3=Os<0 && Os< Os(1);
if(Os3,max(c,o),0);
4수식Os=PriceOsc(shortPeriod,longPeriod);
Os4=Os<0 && Os> Os(1);
if(Os4,max(c,o),0);
5수식 min(c,o)
*지표조건설정
shortPeriod 10
longPeriod 20
*라인설정
price 유형;막대 색상;레드
oscillator 유형;막대 색상;마젠타
shortPeriod 유형;막대 색상;블루우
longPeriod 유형;막대 색상;크라운
0 유형;막대 색상;그레이
*기준선설정
0
*스케일
가격
2020-02-03
439
글번호 135585
지표
답변완료
코드 해석 부탁드립니다.
안녕하세요. 답변으로 아래와 같은 코드를 받았는데요, 이해가 되지 않는 부분이 있어서 질문드렸습니다
질문 1.
OO[cnt] = OO[cnt-1][1];
CC[cnt] = CC[cnt-1][1];
이 배열 부분에해한 설명 가능할까요?
질문 2.
그리고 2개 연속 양봉인데
OO[1] > CC[1] and OO[2] > CC[2]
보내주신 코드는 "전봉과 전전봉이 양봉이면" 이라는 뜻 같은데
OO[0] > CC[0] and OO[1] > CC[1]
이 맞지 않을까요?
질문 3.
진입코드가
ExitLong("2차 매수익절_1안",OnClose, def, "매수");
이와 같은데
이러면 봉의 끝나는 부분에서 매매가 된다면
실거래에서는 불가능한 로직인가요?
아니면 어떤식으로 주문이 나가는건가요?
------------답변 내용------------------------
안녕하세요
예스스탁입니다.
Input : shortPeriod(5), longPeriod(20);
value1 = ma(C, shortPeriod);
value2 = ma(C, longPeriod);
# 매수/매도청산
If CrossUP(value1, value2) Then
{
Buy("매수");
}
If CrossDown(value1, value2) Then
{
Sell("매도");
}
input : convert(30);
var : S1(0), D1(0), TM(0), TF1(0), rng1(0), rng2(0), OOO1(0), OOO2(0), CCC1(0), CCC2(0), cnt(0);
Array : OO[10](0), CC[10](0);
if bdate != bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = sdate;
}
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1; # TM = TimeToMinutes(stime) - S1
Else
TM = TimeToMinutes(stime)+1440-S1; # 아니면 TM = TimeToMinutes(stime) + 1440 - S1
TF1 = TM % convert; # TF1 = TM 나누기 convert(30)의 '나머지'
if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF1 < TF1[1]) Then # TF[1]이 보다 유일하게 커질때가 30분 정각이다.(틱봉에선 반영이 잘 안되지만, 그래도 근사값을 구할수는 있다)
{
OO[0] = O;
CC[0] = C;
for cnt = 1 to 99
{
OO[cnt] = OO[cnt-1][1];
CC[cnt] = CC[cnt-1][1];
}
}
CC[0] = c;
}
// 청산<익절> ---------------------------------------------------------------------------------------------------------------
if MarketPosition == 1 Then
{
if OO[1] > CC[1] and OO[2] > CC[2] Then
ExitLong("2차 매수익절_1안",OnClose, def, "매수");
else if CurrentContracts == 1 Then
ExitLong("2차 매수본절익절_1안", atstop, EntryPrice, "매수", 1, 1);
}
if MarketPosition == -1 Then
{
if OO[1] < CC[1] and OO[2] < CC[2] Then
ExitShort("2차 매도익절_1안", OnClose,def, "매도");
else if CurrentContracts == 1 Then
ExitShort("2차 매도본절익절_1안", atstop, EntryPrice, "매도", 1, 1);
}
// 손절
SetStopLoss(10, PointStop);
즐거운 명절 되시기 바랍니다.
2020-02-03
368
글번호 135583
시스템