커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

시스템 작성의뢰

수고 하십니다 ! 1.증거금의 금액을 10 으로 나누어 거래량 5 이평선이 40 이상 상승하면 신호로 알려주고 on balance price 지표가 - 86 이하로 내려가고 obv 지표가 - 1800 이하로 하락하고 pvi지표가 99.40 이하로 하락하고 120,240,480,960 ,1920 이동평균선이 역배열이 되고 960 이평선과 1920 이평선의 간격이 7틱이상 벌어지고 120 이평선이 240 이평선을 업크로스할때 증거금10으로 나눈 금액중 5 의 금액으로 매수를 하고 30 틱 이상 하락하고 다음 120 이평선이 240 이평선을 업크로스 할때 증거금 중 2 의 금액으로 재 매수를하고 또다시 30틱이상 하락하고 120 이평선이 240 이평선을 업크로스할때 증거금10으로 나눈 금액중 3 의 금액으로 또 재 매수를 하고 50 틱 이상 상승하고 120 이평선이 240 이평선을 다운크로스할때 청산을 한다 2.증거금의 금액을 10으로 나누어 거래량 5 이평선이 40 이상 상승하면 신호로 알려주고 on balance price 지표가 180 이상 상승하고 obv 지표가 2800 이상 상승 하고 pvi지표가 100.30 이상 상승 하고 er bear power 지표가 - 0.00 이하로 하락 하고 120,240,480,960 ,1920 ,3840 이동평균선이 정배열이 되고 1920 이평선과 3840 이평선의 간격이 16 틱이상 벌어지고 120 이평선이 240 이평선을 다운크로스할때 증거금10으로 나눈 금액중 5 의 금액으로 매도를 하고 30 틱 이상 상승 하고 다음 120 이평선이 240 이평선을 다운크로스 할때 증거금 중 2 의 금액으로 재 매도를하고 또다시 30틱이상 상승 하고 120 이평선이 240 이평선을 다운크로스할때 증거금10으로 나눈 금액중 3 의 금액으로 또 재 매도를 하고 50 틱 이상 하락 하고 120 이평선이 240 이평선을 업크로스할때 청산을 한다
프로필 이미지
tnsflwls
2023-07-23
1547
글번호 170863
시스템
답변완료

지표 또는 시스템식으로 부탁드립니다

안녕하세요 아래와 같은 수식을 찿았는데 예스로 변환이 가능한지요? 우선, QQE 지표의 시그널을 구현하기 위해 다음과 같은 함수를 작성합니다. 복사 function qqe_signal(qqe_period, ma_period, buy_signal, sell_signal) { qqe = QQE(qqe_period); ma = MA(qqe, ma_period); if (CrossOver(qqe, ma)) return buy_signal; else if (CrossUnder(qqe, ma)) return sell_signal; else return 0; } 위 함수는 qqe_period 기간 동안의 QQE 지표를 계산하고, 그 결과에 대해 ma_period 기간 동안의 이동평균선을 적용합니다. 그리고 qqe와 ma의 교차 시점에 따라 매수신호와 매도신호를 반환합니다. 이제, 이 함수를 이용하여 매매 시스템을 구현할 수 있습니다. 예를 들어, 다음과 같은 함수를 작성하여 매매 시스템을 구현할 수 있습니다. 복사 function trading_system(qqe_period, ma_period, buy_qty, sell_qty) { signal = qqe_signal(qqe_period, ma_period, 1, -1); if (signal == 1) Buy(buy_qty); else if (signal == -1) Sell(sell_qty); } 위 함수는 qqe_period 기간 동안의 QQE 지표와 ma_period 기간 동안의 이동평균선을 이용하여 매수신호와 매도신호를 계산하고, 그에 따라 buy_qty와 sell_qty 만큼 매수와 매도를 수행합니다.
프로필 이미지
라몬
2023-07-23
1506
글번호 170862
시스템

관리자에 의해 프로그램 사용법 QnA로 이동되었습니다

프로필 이미지
para
2023-07-23
9
글번호 170861
지표
답변완료

시스템식 부탁드립니다.

항상 도움 주셔서 감사합니다. 아래와 같은 시스템식 부탁드립니다. 종목 : 해외선물 차트 : 60분봉 사용자 변수1 : 1,0,-1 중 하나(1=매수만, 0=매매중지, -1=매도만) 사용자 변수2 : 기준가격 (기준가격 이상에서만 매수 또는 매도 또는 기준가격이 0 이면 기준가격 상관없이 매수, 매도) *--------------------------------------- 사용자 변수1 : 1 (매수만 가정시) 사용자 변수2 : 기준가격 (0) - 기준가격 0 가정시 사용자 변수3 : 총 포지션 진입 회수 : 10회 - 물타기만 해당, 불타기는 미해당 사용자 변수4 : 추가매수량 (1) - 추가매수, 추가매도 계약 수량 매수 : 사용자 변수가 1 이면 현재가격에 시장가로 1계약 매수 상승시 추가매수 : 현재 매수가격에서 10틱씩 상승할때마다 무조건 1계약 매수 하락시 추가매수 : 현재 매수가격에서 10틱씩 하락할때마다 무조건 1계약 매수 상승시 익절 : 매수 이후 상승시 매수가격에서 10틱 상승하면 익절 (익절 후 추가 매수 1계약 진행) 하락시 익절 : 매수 이후 하락시 매수가격에서 10틱 상승하면 익절 (익절 후 추가 매수 미진행) (처음 진입가격에서 하락에 따른 매수는 매수가격에서 10틱 상승시 익절하며, 추가매수는 하지 않지만 가격이 마지막 매수가격보다 10틱 더 하락시 추가 물타기 진행) 손절 : 매수 후 10틱 상승에 따른 익절 후 추가 매수는 진입횟수에 제한 없음 손절 : 매수 후 하락시 물타기는 최대 10회 제한 물타기 10회 모두 진입하고 손실이 1000틱이면 손절 제한 사항 : 포지션 손절 및 익절 후 잔고가 없으면 진입회수는 초기화 5회 물타기 진입 후 3회 익절 청산시 진입횟수는 2회로 카운팅 위와 같은 시스템식 부탁드립니다. 감사합니다.
프로필 이미지
양치기
2023-07-23
1165
글번호 170860
시스템
답변완료

코스피선물200 일봉차트에서 candlestick OHLC 차트구현

안녕하세요? 코스피 선물200 주간장 일봉차트 candlestick OHLC 차트구현 수식 부탁드립니다. 감사합니다.
프로필 이미지
조지1
2023-07-23
1384
글번호 170859
지표
답변완료

지표 변환 좀 해주세요.

//@version=4 study(title="Equilibriums", shorttitle="Equilibrium", overlay=true) //----------[ First Step: create inputs for equilibrium line periods tenkanPeriods = input(9, minval=1, title="Tenkan-Sen Length") zandakaPeriods1 = input(17, minval=1, title="Zandaka Period 1") kijunPeriods = input(26, minval=1, title="Kijun-Sen Length") zandakaPeriods2 = input(33, minval=1, title="Zandaka Period 2") zandakaPeriods3 = input(42, minval=1, title="Zandaka Period 3") zandakaPeriods4 = input(52, minval=1, title="Zandaka Period 4") zandakaPeriods5 = input(65, minval=1, title="Zandaka Period 5") zandakaPeriods6 = input(76, minval=1, title="Zandaka Period 6") //----------[ Second Step: define the formula for calculating the equilibrium donchian(len) => avg(lowest(len), highest(len)) //----------[ Third Step: Link the inputs to the previously created formula tenkanSen = donchian(tenkanPeriods) zandakaSen1 = donchian(zandakaPeriods1) kijunSen = donchian(kijunPeriods) zandakaSen2 = donchian(zandakaPeriods2) zandakaSen3 = donchian(zandakaPeriods3) zandakaSen4 = donchian(zandakaPeriods4) zandakaSen5 = donchian(zandakaPeriods5) zandakaSen6 = donchian(zandakaPeriods6) //----------[ Last Step: Create the code for plotting (this step is of vital importance as no one likes ugly or unclear indicators) plot(zandakaSen6, linewidth=8, color=color.rgb(255,150,000,60), title="Zandaka-Sen 6") plot(zandakaSen5, linewidth=7, color=color.rgb(255,255,000,60), title="Zandaka-Sen 5") plot(zandakaSen4, linewidth=6, color=color.rgb(000,036,249,60), title="Zandaka-Sen 4") plot(zandakaSen3, linewidth=5, color=color.rgb(139,000,247,40), title="Zandaka-Sen 3") plot(zandakaSen2, linewidth=4, color=color.rgb(226,159,226,00), title="Zandaka-Sen 2") plot(kijunSen, linewidth=3, color=color.rgb(227,000,034,20), title="Kijun-Sen") plot(zandakaSen1, linewidth=1, color=color.rgb(038,186,030,40), title="Zandaka-Sen 1") plot(tenkanSen, linewidth=3, color=color.rgb(000,152,116,00), title="Tenkan-Sen") 트레이딩 뷰 지표인데 예스로 변환 좀 해주세요.
프로필 이미지
신대륙발견
2023-07-23
1462
글번호 170858
지표
답변완료

지표수식요청

수고많으십니다 아래 수식을 예스언어로 부탁드립니다 MO=floor(date/100); TO=sum(H); TT=countsince(MO!=MO(1),c>0); TD=TO-valuewhen(1,MO!=MO(1),TO(1)); CROSSUP(C,TD/TT) 감사합니다
프로필 이미지
트라이
2023-07-23
1282
글번호 170857
종목검색
답변완료

진입신호 안되던데?

안녕하세요 식좀 수정 부탁드려요 감사합니다 ======================================================================================== //지수 Vars : CodeES ("ES.1" ), 일봉ES (25), 시작시분초ES (090000), 종료시분초ES (055000), 상단저항가ES (1.00 ), 하단지지가ES (1.00 ), 상단전환가ES (3 ), 하단전환가ES (3 ), 고점매도가ES (11.0 ), 저점매수가ES (11.0 ), 상단목표가ES (12 ), 하단목표가ES (12 ), 진입횟수ES ( 100 ) ; // 미니S&P500 Vars : CodeYM ("YM.1" ), 일봉YM (25), 시작시분초YM (090000), 종료시분초YM (055000), 상단저항가YM (10.0 ), 하단지지가YM (10.0 ), 상단전환가YM (30 ), 하단전환가YM (30 ), 고점매도가YM (110.0 ), 저점매수가YM (110.0 ), 상단목표가YM (120 ), 하단목표가YM (120 ), 진입횟수YM ( 100 ) ; // 미니다우 Vars : CodeNQ ("NQ.1" ), 일봉NQ (25), 시작시분초NQ (090000), 종료시분초NQ (055000), 상단저항가NQ (2.50 ), 하단지지가NQ (2.50 ), 상단전환가NQ (7.5 ), 하단전환가NQ (7.5 ), 고점매도가NQ (27.5 ), 저점매수가NQ (27.5 ), 상단목표가NQ (30 ), 하단목표가NQ (30 ), 진입횟수NQ ( 100 ) ; // 미니나스닥100 //에너지 Vars : CodeCL ("CL.1" ), 일봉CL (25), 시작시분초CL (090000), 종료시분초CL (055000), 상단저항가CL (0.05 ), 하단지지가CL (0.05 ), 상단전환가CL (0.15 ), 하단전환가CL (0.15 ), 고점매도가CL (0.55 ), 저점매수가CL (0.55 ), 상단목표가CL (0.6 ), 하단목표가CL (0.6 ), 진입횟수CL ( 100 ) ; // 크루드오일 Vars : CodeBZ ("BZ.1" ), 일봉BZ (25), 시작시분초BZ (090000), 종료시분초BZ (055000), 상단저항가BZ (0.05 ), 하단지지가BZ (0.05 ), 상단전환가BZ (0.15 ), 하단전환가BZ (0.15 ), 고점매도가BZ (0.55 ), 저점매수가BZ (0.55 ), 상단목표가BZ (0.6 ), 하단목표가BZ (0.6 ), 진입횟수BZ ( 100 ) ; // 브렌트오일 Vars : CodeHO ("HO.1" ), 일봉HO (25), 시작시분초HO (090000), 종료시분초HO (055000), 상단저항가HO (0.00119 ), 하단지지가HO (0.00119 ), 상단전환가HO (0.00357 ), 하단전환가HO (0.00357 ), 고점매도가HO (0.01310 ), 저점매수가HO (0.01310 ), 상단목표가HO (0.01429 ), 하단목표가HO (0.01429 ), 진입횟수HO ( 100 ) ; // 히팅오일 Vars : CodeRB ("RB.1" ), 일봉RB (25), 시작시분초RB (090000), 종료시분초RB (055000), 상단저항가RB (0.00119 ), 하단지지가RB (0.00119 ), 상단전환가RB (0.00357 ), 하단전환가RB (0.00357 ), 고점매도가RB (0.01310 ), 저점매수가RB (0.01310 ), 상단목표가RB (0.01429 ), 하단목표가RB (0.01429 ), 진입횟수RB ( 100 ) ; // 가솔린 Vars : CodeNG ("NG.1" ), 일봉NG (25), 시작시분초NG (090000), 종료시분초NG (055000), 상단저항가NG (0.005 ), 하단지지가NG (0.005 ), 상단전환가NG (0.015 ), 하단전환가NG (0.15 ), 고점매도가NG (0.055 ), 저점매수가NG (0.055 ), 상단목표가NG (0.06 ), 하단목표가NG (0.06 ), 진입횟수NG ( 100 ) ; // 천연가스 //금속 Vars : CodeGC ("GC.1" ), 일봉GC (25), 시작시분초GC (090000), 종료시분초GC (055000), 상단저항가GC (0.50 ), 하단지지가GC (0.50 ), 상단전환가GC (1.5 ), 하단전환가GC (1.5 ), 고점매도가GC (5.5 ), 저점매수가GC (5.5 ), 상단목표가GC (6 ), 하단목표가GC (6 ), 진입횟수GC ( 100 ) ; // 골드 Vars : CodeSI ("SI.1" ), 일봉SI (25), 시작시분초SI (090000), 종료시분초SI (055000), 상단저항가SI (0.01 ), 하단지지가SI (0.01 ), 상단전환가SI (0.03 ), 하단전환가SI (0.03 ), 고점매도가SI (0.11 ), 저점매수가SI (0.11 ), 상단목표가SI (0.12 ), 하단목표가SI (0.12 ), 진입횟수SI ( 100 ) ; // 실버 Vars : CodePL ("PL.1" ), 일봉PL (25), 시작시분초PL (090000), 종료시분초PL (055000), 상단저항가PL (1.00 ), 하단지지가PL (1.00 ), 상단전환가PL (3 ), 하단전환가PL (3 ), 고점매도가PL (11.0 ), 저점매수가PL (11.0 ), 상단목표가PL (12 ), 하단목표가PL (12 ), 진입횟수PL ( 100 ) ; // 플래티넘 Vars : CodeHG ("HG.1" ), 일봉HG (25), 시작시분초HG (090000), 종료시분초HG (055000), 상단저항가HG (0.2 ), 하단지지가HG (0.2 ), 상단전환가HG (0.6 ), 하단전환가HG (0.6 ), 고점매도가HG (2.2 ), 저점매수가HG (2.2 ), 상단목표가HG (2.4 ), 하단목표가HG (2.4 ), 진입횟수HG ( 100 ) ; // 구리 //농축산물 Vars : CodeZW ("ZW.1" ), 일봉ZW (25), 시작시분초ZW (090000), 종료시분초ZW (031000), 상단저항가ZW (0 ), 하단지지가ZW (0 ), 상단전환가ZW (3 ), 하단전환가ZW (3 ), 고점매도가ZW (11.0 ), 저점매수가ZW (11.0 ), 상단목표가ZW (12 ), 하단목표가ZW (12 ), 진입횟수ZW ( 100 ) ; // Wheat Vars : CodeZS ("ZS.1" ), 일봉ZS (25), 시작시분초ZS (090000), 종료시분초ZS (031000), 상단저항가ZS (0 ), 하단지지가ZS (0 ), 상단전환가ZS (3 ), 하단전환가ZS (3 ), 고점매도가ZS (11.0 ), 저점매수가ZS (11.0 ), 상단목표가ZS (12 ), 하단목표가ZS (12 ), 진입횟수ZS ( 100 ) ; // Soybean Vars : CodeZM ("ZM.1" ), 일봉ZM (25), 시작시분초ZM (090000), 종료시분초ZM (031000), 상단저항가ZM (0 ), 하단지지가ZM (0 ), 상단전환가ZM (1.5 ), 하단전환가ZM (1.5 ), 고점매도가ZM (5.5 ), 저점매수가ZM (5.5 ), 상단목표가ZM (6 ), 하단목표가ZM (6 ), 진입횟수ZM ( 100 ) ; // Soybean Meal Vars : CodeLE ("LE.1" ), 일봉LE (25), 시작시분초LE (224000), 종료시분초LE (030000), 상단저항가LE (0 ), 하단지지가LE (0 ), 상단전환가LE (0.375 ), 하단전환가LE (0.375 ), 고점매도가LE (1.375 ), 저점매수가LE (1.375 ), 상단목표가LE (1.5 ), 하단목표가LE (1.5 ), 진입횟수LE ( 100 ) ; // Live Cattle Vars : CodeHE ("HE.1" ), 일봉HE (25), 시작시분초HE (224000), 종료시분초HE (030000), 상단저항가HE (0 ), 하단지지가HE (0 ), 상단전환가HE (0.375 ), 하단전환가HE (0.375 ), 고점매도가HE (1.375 ), 저점매수가HE (1.375 ), 상단목표가HE (1.5 ), 하단목표가HE (1.5 ), 진입횟수HE ( 100 ) ; // Lean Hogs Vars : CodeKC ("KC.1" ), 일봉KC (25), 시작시분초KC (171500), 종료시분초KC (022000), 상단저항가KC (0 ), 하단지지가KC (0 ), 상단전환가KC (0.4 ), 하단전환가KC (0.4 ), 고점매도가KC (1.46667 ), 저점매수가KC (1.46667 ), 상단목표가KC (1.60 ), 하단목표가KC (1.60 ), 진입횟수KC ( 100 ) ; // ICE Coffee //통화 Vars : Code6A ("6A.1" ), 일봉6A (25), 시작시분초6A (090000), 종료시분초6A (055000), 상단저항가6A (0 ), 하단지지가6A (0 ), 상단전환가6A (0.0015 ), 하단전환가6A (0.0015 ), 고점매도가6A (0.0055 ), 저점매수가6A (0.0055 ), 상단목표가6A (0.006 ), 하단목표가6A (0.006 ), 진입횟수6A ( 100 ) ; // 호주 달러 Vars : Code6C ("6C.1" ), 일봉6C (25), 시작시분초6C (090000), 종료시분초6C (055000), 상단저항가6C (0 ), 하단지지가6C (0 ), 상단전환가6C (0.0015 ), 하단전환가6C (0.0015 ), 고점매도가6C (0.0055 ), 저점매수가6C (0.0055 ), 상단목표가6C (0.006 ), 하단목표가6C (0.006 ), 진입횟수6C ( 100 ) ; // 캐나다 달러 Vars : Code6B ("6B.1" ), 일봉6B (25), 시작시분초6B (090000), 종료시분초6B (055000), 상단저항가6B (0 ), 하단지지가6B (0 ), 상단전환가6B (0.0024 ), 하단전환가6B (0.0024 ), 고점매도가6B (0.0088 ), 저점매수가6B (0.0088 ), 상단목표가6B (0.0096 ), 하단목표가6B (0.0096 ), 진입횟수6B ( 100 ) ; // 영국 파운드 Vars : Code6J ("6J.1" ), 일봉6J (25), 시작시분초6J (090000), 종료시분초6J (055000), 상단저항가6J (0 ), 하단지지가6J (0 ), 상단전환가6J (12 ), 하단전환가6J (12 ), 고점매도가6J (44.00 ), 저점매수가6J (44.00 ), 상단목표가6J (48 ), 하단목표가6J (48 ), 진입횟수6J ( 100 ) ; // 일본 엔 Vars : Code6N ("6N.1" ), 일봉6N (25), 시작시분초6N (090000), 종료시분초6N (055000), 상단저항가6N (0 ), 하단지지가6N (0 ), 상단전환가6N (0.0015 ), 하단전환가6N (0.0015 ), 고점매도가6N (0.0055 ), 저점매수가6N (0.0055 ), 상단목표가6N (0.006 ), 하단목표가6N (0.006 ), 진입횟수6N ( 100 ) ; // 뉴질랜드 달러 Vars : Code6S ("6S.1" ), 일봉6S (25), 시작시분초6S (090000), 종료시분초6S (055000), 상단저항가6S (0 ), 하단지지가6S (0 ), 상단전환가6S (0.0012 ), 하단전환가6S (0.0012 ), 고점매도가6S (0.0044 ), 저점매수가6S (0.0044 ), 상단목표가6S (0.0048 ), 하단목표가6S (0.0048 ), 진입횟수6S ( 100 ) ; // 스위스 프랑 Vars : Code6E ("6E.1" ), 일봉6E (25), 시작시분초6E (090000), 종료시분초6E (055000), 상단저항가6E (0 ), 하단지지가6E (0 ), 상단전환가6E (0.0012 ), 하단전환가6E (0.0012 ), 고점매도가6E (0.0044 ), 저점매수가6E (0.0044 ), 상단목표가6E (0.0048 ), 하단목표가6E (0.0048 ), 진입횟수6E ( 100 ) ; // 유럽연합 유로 Vars : CodeVX ("VX.1" ), 일봉VX (25), 시작시분초VX (090000), 종료시분초VX (055000), 상단저항가VX (0.05 ), 하단지지가VX (0.05 ), 상단전환가VX (0.2 ), 하단전환가VX (0.2 ), 고점매도가DX (2.75 ), 저점매수가DX (2.75 ), 상단목표가VX (0.6 ), 하단목표가VX (0.6 ), 진입횟수VX ( 100 ) ; // VIX Vars : CodeDX ("DX.1" ), 일봉DX (25), 시작시분초DX (090000), 종료시분초DX (055000), 상단저항가DX (0.05 ), 하단지지가DX (0.05 ), 상단전환가DX (0.2 ), 하단전환가DX (0.2 ), 고점매도가VX (0.55 ), 저점매수가VX (0.55 ), 상단목표가DX (0.6 ), 하단목표가DX (0.6 ), 진입횟수DX ( 100 ) ; // 달러인덱스 //Input : 일봉이평선수정 (0); //Input : 시작시분초수정 (0); //Input : 종료시분초수정 (0); //Input : 상단저항가수정 (0) ; //Input : 하단지지가수정 (0) ; //Input : 상단전환가수정 (0) ; //Input : 하단전환가수정 (0) ; //Input : 고점매도가수정 (0) ; //Input : 저점매수가수정 (0) ; //Input : 상단목표가수정 (0) ; //Input : 하단목표가수정 (0) ; Vars : CodeCheck ( FALSE ) ; Vars : 일봉이평선조정 (0); Vars : 시작시분초조정 (0); Vars : 종료시분초조정 (0); Vars : 상단저항가조정 (0) ; Vars : 하단지지가조정 (0) ; Vars : 상단전환가조정 (0) ; Vars : 하단전환가조정 (0) ; Vars : 고점매도가조정 (0) ; Vars : 저점매수가조정 (0) ; Vars : 상단목표가조정 (0) ; Vars : 하단목표가조정 (0) ; Vars : 진입횟수조정 (0) ; if( CodeES == SymbolCode ) then { 일봉이평선조정 = 일봉ES ; 시작시분초조정 = 시작시분초ES ; 종료시분초조정 = 종료시분초ES ; 상단저항가조정 = 상단저항가ES ; 하단지지가조정 = 하단지지가ES ; 상단전환가조정 = 상단전환가ES ; 하단전환가조정 = 하단전환가ES ; 고점매도가조정 = 고점매도가ES ; 저점매수가조정 = 저점매수가ES ; 상단목표가조정 = 상단목표가ES ; 하단목표가조정 = 하단목표가ES ; 진입횟수조정 = 진입횟수ES ; CodeCheck = TRUE ; } else if( CodeYM == SymbolCode ) then { 일봉이평선조정 = 일봉YM ; 시작시분초조정 = 시작시분초YM ; 종료시분초조정 = 종료시분초YM ; 상단저항가조정 = 상단저항가YM ; 하단지지가조정 = 하단지지가YM ; 상단전환가조정 = 상단전환가YM ; 하단전환가조정 = 하단전환가YM ; 고점매도가조정 = 고점매도가YM ; 저점매수가조정 = 저점매수가YM ; 상단목표가조정 = 상단목표가YM ; 하단목표가조정 = 하단목표가YM ; 진입횟수조정 = 진입횟수YM ; CodeCheck = TRUE ; } else if( CodeNQ == SymbolCode ) then { 일봉이평선조정 = 일봉NQ ; 시작시분초조정 = 시작시분초NQ ; 종료시분초조정 = 종료시분초NQ ; 상단저항가조정 = 상단저항가NQ ; 하단지지가조정 = 하단지지가NQ ; 상단전환가조정 = 상단전환가NQ ; 하단전환가조정 = 하단전환가NQ ; 고점매도가조정 = 고점매도가NQ ; 저점매수가조정 = 저점매수가NQ ; 상단목표가조정 = 상단목표가NQ ; 하단목표가조정 = 하단목표가NQ ; 진입횟수조정 = 진입횟수NQ ; CodeCheck = TRUE ; } else if( CodeCL == SymbolCode ) then { 일봉이평선조정 = 일봉CL ; 시작시분초조정 = 시작시분초CL ; 종료시분초조정 = 종료시분초CL ; 상단저항가조정 = 상단저항가CL ; 하단지지가조정 = 하단지지가CL ; 상단전환가조정 = 상단전환가CL ; 하단전환가조정 = 하단전환가CL ; 고점매도가조정 = 고점매도가CL ; 저점매수가조정 = 저점매수가CL ; 상단목표가조정 = 상단목표가CL ; 하단목표가조정 = 하단목표가CL ; 진입횟수조정 = 진입횟수CL ; CodeCheck = TRUE ; } else if( CodeBZ == SymbolCode ) then { 일봉이평선조정 = 일봉BZ ; 시작시분초조정 = 시작시분초BZ ; 종료시분초조정 = 종료시분초BZ ; 상단저항가조정 = 상단저항가BZ ; 하단지지가조정 = 하단지지가BZ ; 상단전환가조정 = 상단전환가BZ ; 하단전환가조정 = 하단전환가BZ ; 고점매도가조정 = 고점매도가BZ ; 저점매수가조정 = 저점매수가BZ ; 상단목표가조정 = 상단목표가BZ ; 하단목표가조정 = 하단목표가BZ ; 진입횟수조정 = 진입횟수BZ ; CodeCheck = TRUE ; } else if( CodeHO == SymbolCode ) then { 일봉이평선조정 = 일봉HO ; 시작시분초조정 = 시작시분초HO ; 종료시분초조정 = 종료시분초HO ; 상단저항가조정 = 상단저항가HO ; 하단지지가조정 = 하단지지가HO ; 상단전환가조정 = 상단전환가HO ; 하단전환가조정 = 하단전환가HO ; 고점매도가조정 = 고점매도가HO ; 저점매수가조정 = 저점매수가HO ; 상단목표가조정 = 상단목표가HO ; 하단목표가조정 = 하단목표가HO ; 진입횟수조정 = 진입횟수HO ; CodeCheck = TRUE ; } else if( CodeRB == SymbolCode ) then { 일봉이평선조정 = 일봉RB ; 시작시분초조정 = 시작시분초RB ; 종료시분초조정 = 종료시분초RB ; 상단저항가조정 = 상단저항가RB ; 하단지지가조정 = 하단지지가RB ; 상단전환가조정 = 상단전환가RB ; 하단전환가조정 = 하단전환가RB ; 고점매도가조정 = 고점매도가RB ; 저점매수가조정 = 저점매수가RB ; 상단목표가조정 = 상단목표가RB ; 하단목표가조정 = 하단목표가RB ; 진입횟수조정 = 진입횟수RB ; CodeCheck = TRUE ; } else if( CodeNG == SymbolCode ) then { 일봉이평선조정 = 일봉NG ; 시작시분초조정 = 시작시분초NG ; 종료시분초조정 = 종료시분초NG ; 상단저항가조정 = 상단저항가NG ; 하단지지가조정 = 하단지지가NG ; 상단전환가조정 = 상단전환가NG ; 하단전환가조정 = 하단전환가NG ; 고점매도가조정 = 고점매도가NG ; 저점매수가조정 = 저점매수가NG ; 상단목표가조정 = 상단목표가NG ; 하단목표가조정 = 하단목표가NG ; 진입횟수조정 = 진입횟수NG ; CodeCheck = TRUE ; } else if( CodeGC == SymbolCode ) then { 일봉이평선조정 = 일봉GC ; 시작시분초조정 = 시작시분초GC ; 종료시분초조정 = 종료시분초GC ; 상단저항가조정 = 상단저항가GC ; 하단지지가조정 = 하단지지가GC ; 상단전환가조정 = 상단전환가GC ; 하단전환가조정 = 하단전환가GC ; 고점매도가조정 = 고점매도가GC ; 저점매수가조정 = 저점매수가GC ; 상단목표가조정 = 상단목표가GC ; 하단목표가조정 = 하단목표가GC ; 진입횟수조정 = 진입횟수GC ; CodeCheck = TRUE ; } else if( CodeSI == SymbolCode ) then { 일봉이평선조정 = 일봉SI ; 시작시분초조정 = 시작시분초SI ; 종료시분초조정 = 종료시분초SI ; 상단저항가조정 = 상단저항가SI ; 하단지지가조정 = 하단지지가SI ; 상단전환가조정 = 상단전환가SI ; 하단전환가조정 = 하단전환가SI ; 고점매도가조정 = 고점매도가SI ; 저점매수가조정 = 저점매수가SI ; 상단목표가조정 = 상단목표가SI ; 하단목표가조정 = 하단목표가SI ; 진입횟수조정 = 진입횟수SI ; CodeCheck = TRUE ; } else if( CodePL == SymbolCode ) then { 일봉이평선조정 = 일봉PL ; 시작시분초조정 = 시작시분초PL ; 종료시분초조정 = 종료시분초PL ; 상단저항가조정 = 상단저항가PL ; 하단지지가조정 = 하단지지가PL ; 상단전환가조정 = 상단전환가PL ; 하단전환가조정 = 하단전환가PL ; 고점매도가조정 = 고점매도가PL ; 저점매수가조정 = 저점매수가PL ; 상단목표가조정 = 상단목표가PL ; 하단목표가조정 = 하단목표가PL ; 진입횟수조정 = 진입횟수PL ; CodeCheck = TRUE ; } else if( CodeHG == SymbolCode ) then { 일봉이평선조정 = 일봉HG ; 시작시분초조정 = 시작시분초HG ; 종료시분초조정 = 종료시분초HG ; 상단저항가조정 = 상단저항가HG ; 하단지지가조정 = 하단지지가HG ; 상단전환가조정 = 상단전환가HG ; 하단전환가조정 = 하단전환가HG ; 고점매도가조정 = 고점매도가HG ; 저점매수가조정 = 저점매수가HG ; 상단목표가조정 = 상단목표가HG ; 하단목표가조정 = 하단목표가HG ; 진입횟수조정 = 진입횟수HG ; CodeCheck = TRUE ; } else if( CodeZW == SymbolCode ) then { 일봉이평선조정 = 일봉ZW ; 시작시분초조정 = 시작시분초ZW ; 종료시분초조정 = 종료시분초ZW ; 상단저항가조정 = 상단저항가ZW ; 하단지지가조정 = 하단지지가ZW ; 상단전환가조정 = 상단전환가ZW ; 하단전환가조정 = 하단전환가ZW ; 고점매도가조정 = 고점매도가ZW ; 저점매수가조정 = 저점매수가ZW ; 상단목표가조정 = 상단목표가ZW ; 하단목표가조정 = 하단목표가ZW ; 진입횟수조정 = 진입횟수ZW ; CodeCheck = TRUE ; } else if( CodeZS == SymbolCode ) then { 일봉이평선조정 = 일봉ZS ; 시작시분초조정 = 시작시분초ZS ; 종료시분초조정 = 종료시분초ZS ; 상단저항가조정 = 상단저항가ZS ; 하단지지가조정 = 하단지지가ZS ; 상단전환가조정 = 상단전환가ZS ; 하단전환가조정 = 하단전환가ZS ; 고점매도가조정 = 고점매도가ZS ; 저점매수가조정 = 저점매수가ZS ; 상단목표가조정 = 상단목표가ZS ; 하단목표가조정 = 하단목표가ZS ; 진입횟수조정 = 진입횟수ZS ; CodeCheck = TRUE ; } else if( CodeZM == SymbolCode ) then { 일봉이평선조정 = 일봉ZM ; 시작시분초조정 = 시작시분초ZM ; 종료시분초조정 = 종료시분초ZM ; 상단저항가조정 = 상단저항가ZM ; 하단지지가조정 = 하단지지가ZM ; 상단전환가조정 = 상단전환가ZM ; 하단전환가조정 = 하단전환가ZM ; 고점매도가조정 = 고점매도가ZM ; 저점매수가조정 = 저점매수가ZM ; 상단목표가조정 = 상단목표가ZM ; 하단목표가조정 = 하단목표가ZM ; 진입횟수조정 = 진입횟수ZM ; CodeCheck = TRUE ; } else if( CodeLE == SymbolCode ) then { 일봉이평선조정 = 일봉LE ; 시작시분초조정 = 시작시분초LE ; 종료시분초조정 = 종료시분초LE ; 상단저항가조정 = 상단저항가LE ; 하단지지가조정 = 하단지지가LE ; 상단전환가조정 = 상단전환가LE ; 하단전환가조정 = 하단전환가LE ; 고점매도가조정 = 고점매도가LE ; 저점매수가조정 = 저점매수가LE ; 상단목표가조정 = 상단목표가LE ; 하단목표가조정 = 하단목표가LE ; 진입횟수조정 = 진입횟수LE ; CodeCheck = TRUE ; } else if( CodeHE == SymbolCode ) then { 일봉이평선조정 = 일봉HE ; 시작시분초조정 = 시작시분초HE ; 종료시분초조정 = 종료시분초HE ; 상단저항가조정 = 상단저항가HE ; 하단지지가조정 = 하단지지가HE ; 상단전환가조정 = 상단전환가HE ; 하단전환가조정 = 하단전환가HE ; 고점매도가조정 = 고점매도가HE ; 저점매수가조정 = 저점매수가HE ; 상단목표가조정 = 상단목표가HE ; 하단목표가조정 = 하단목표가HE ; 진입횟수조정 = 진입횟수HE ; CodeCheck = TRUE ; } else if( CodeKC == SymbolCode ) then { 일봉이평선조정 = 일봉KC ; 시작시분초조정 = 시작시분초KC ; 종료시분초조정 = 종료시분초KC ; 상단저항가조정 = 상단저항가KC ; 하단지지가조정 = 하단지지가KC ; 상단전환가조정 = 상단전환가KC ; 하단전환가조정 = 하단전환가KC ; 고점매도가조정 = 고점매도가KC ; 저점매수가조정 = 저점매수가KC ; 상단목표가조정 = 상단목표가KC ; 하단목표가조정 = 하단목표가KC ; 진입횟수조정 = 진입횟수KC ; CodeCheck = TRUE ; } else if( Code6A == SymbolCode ) then { 일봉이평선조정 = 일봉6A ; 시작시분초조정 = 시작시분초6A ; 종료시분초조정 = 종료시분초6A ; 상단저항가조정 = 상단저항가6A ; 하단지지가조정 = 하단지지가6A ; 상단전환가조정 = 상단전환가6A ; 하단전환가조정 = 하단전환가6A ; 고점매도가조정 = 고점매도가6A ; 저점매수가조정 = 저점매수가6A ; 상단목표가조정 = 상단목표가6A ; 하단목표가조정 = 하단목표가6A ; 진입횟수조정 = 진입횟수6A ; CodeCheck = TRUE ; } else if( Code6C == SymbolCode ) then { 일봉이평선조정 = 일봉6C ; 시작시분초조정 = 시작시분초6C ; 종료시분초조정 = 종료시분초6C ; 상단저항가조정 = 상단저항가6C ; 하단지지가조정 = 하단지지가6C ; 상단전환가조정 = 상단전환가6C ; 하단전환가조정 = 하단전환가6C ; 고점매도가조정 = 고점매도가6C ; 저점매수가조정 = 저점매수가6C ; 상단목표가조정 = 상단목표가6C ; 하단목표가조정 = 하단목표가6C ; 진입횟수조정 = 진입횟수6C ; CodeCheck = TRUE ; } else if( Code6B == SymbolCode ) then { 일봉이평선조정 = 일봉6B ; 시작시분초조정 = 시작시분초6B ; 종료시분초조정 = 종료시분초6B ; 상단저항가조정 = 상단저항가6B ; 하단지지가조정 = 하단지지가6B ; 상단전환가조정 = 상단전환가6B ; 하단전환가조정 = 하단전환가6B ; 고점매도가조정 = 고점매도가6B ; 저점매수가조정 = 저점매수가6B ; 상단목표가조정 = 상단목표가6B ; 하단목표가조정 = 하단목표가6B ; 진입횟수조정 = 진입횟수6B ; CodeCheck = TRUE ; } else if( Code6J == SymbolCode ) then { 일봉이평선조정 = 일봉6J ; 시작시분초조정 = 시작시분초6J ; 종료시분초조정 = 종료시분초6J ; 상단저항가조정 = 상단저항가6J ; 하단지지가조정 = 하단지지가6J ; 상단전환가조정 = 상단전환가6J ; 하단전환가조정 = 하단전환가6J ; 고점매도가조정 = 고점매도가6J ; 저점매수가조정 = 저점매수가6J ; 상단목표가조정 = 상단목표가6J ; 하단목표가조정 = 하단목표가6J ; 진입횟수조정 = 진입횟수6J ; CodeCheck = TRUE ; } else if( Code6N == SymbolCode ) then { 일봉이평선조정 = 일봉6N ; 시작시분초조정 = 시작시분초6N ; 종료시분초조정 = 종료시분초6N ; 상단저항가조정 = 상단저항가6N ; 하단지지가조정 = 하단지지가6N ; 상단전환가조정 = 상단전환가6N ; 하단전환가조정 = 하단전환가6N ; 고점매도가조정 = 고점매도가6N ; 저점매수가조정 = 저점매수가6N ; 상단목표가조정 = 상단목표가6N ; 하단목표가조정 = 하단목표가6N ; 진입횟수조정 = 진입횟수6N ; CodeCheck = TRUE ; } else if( Code6S == SymbolCode ) then { 일봉이평선조정 = 일봉6S ; 시작시분초조정 = 시작시분초6S ; 종료시분초조정 = 종료시분초6S ; 상단저항가조정 = 상단저항가6S ; 하단지지가조정 = 하단지지가6S ; 상단전환가조정 = 상단전환가6S ; 하단전환가조정 = 하단전환가6S ; 고점매도가조정 = 고점매도가6S ; 저점매수가조정 = 저점매수가6S ; 상단목표가조정 = 상단목표가6S ; 하단목표가조정 = 하단목표가6S ; 진입횟수조정 = 진입횟수6S ; CodeCheck = TRUE ; } else if( Code6E == SymbolCode ) then { 일봉이평선조정 = 일봉6E ; 시작시분초조정 = 시작시분초6E ; 종료시분초조정 = 종료시분초6E ; 상단저항가조정 = 상단저항가6E ; 하단지지가조정 = 하단지지가6E ; 상단전환가조정 = 상단전환가6E ; 하단전환가조정 = 하단전환가6E ; 고점매도가조정 = 고점매도가6E ; 저점매수가조정 = 저점매수가6E ; 상단목표가조정 = 상단목표가6E ; 하단목표가조정 = 하단목표가6E ; 진입횟수조정 = 진입횟수6E ; CodeCheck = TRUE ; } else if( CodeVX == SymbolCode ) then { 일봉이평선조정 = 일봉VX ; 시작시분초조정 = 시작시분초VX ; 종료시분초조정 = 종료시분초VX ; 상단저항가조정 = 상단저항가VX ; 하단지지가조정 = 하단지지가VX ; 상단전환가조정 = 상단전환가VX ; 하단전환가조정 = 하단전환가VX ; 고점매도가조정 = 고점매도가VX ; 저점매수가조정 = 저점매수가VX ; 상단목표가조정 = 상단목표가VX ; 하단목표가조정 = 하단목표가VX ; 진입횟수조정 = 진입횟수VX ; CodeCheck = TRUE ; } else if( CodeDX == SymbolCode ) then { 일봉이평선조정 = 일봉DX ; 시작시분초조정 = 시작시분초DX ; 종료시분초조정 = 종료시분초DX ; 상단저항가조정 = 상단저항가DX ; 하단지지가조정 = 하단지지가DX ; 상단전환가조정 = 상단전환가DX ; 하단전환가조정 = 하단전환가DX ; 고점매도가조정 = 고점매도가DX ; 저점매수가조정 = 저점매수가DX ; 상단목표가조정 = 상단목표가DX ; 하단목표가조정 = 하단목표가DX ; 진입횟수조정 = 진입횟수DX ; CodeCheck = TRUE ; } Vars : value(0); Vars : exit(false); Vars : io(0) ; Vars : Gc(0) ; Vars : Gv(0.0) ; Vars : Bc(0) ; Vars : Bv(0.0) ; Vars : Rc(0) ; Vars : Rv(0.0) ; Vars : HRv(0.00) ; // 상단저항가 Vars : LSv(0.00) ; // 하단지지가 Vars : HTv(0.00) ; // 상단전환가 Vars : LTv(0.00) ; // 하단전환수 Vars : HSv(0.00) ; // 고점매도가 Vars : LBv(0.00) ; // 저점매수가 Vars : HGv(0.00) ; // 상단목표가 Vars : LGv(0.00) ; // 하단목표가 Gc = 0 ; Gv = 0 ; Bc = 0 ; Bv = 0 ; Rc = 0 ; Rv = 0 ; HRv=0 ; LSv=0 ; HTv=0 ; LTv=0 ; HGv=0 ; LGv=0 ; HSv=0 ; LBv=0 ; if( CodeCheck == TRUE ) Then { for value = 1 to 일봉이평선조정 { { Gc = Gc + 1.0 ; Gv = Gv + ( DayHigh( value ) - DayLow( value ) ) ; } if( DayClose( value ) < DayOpen( value ) ) then // 음봉 { Bc = Bc + 1.0 ; Bv = Bv + ( DayHigh( value ) - DayOpen( value ) ) ; } if( DayClose( value ) > DayOpen( value ) ) then // 양봉 { Rc = Rc + 1 ; Rv = Rv + ( DayOpen( value ) - DayLow( value ) ) ; } } if( Gc > 0 ) then Gv = Gv / Gc ; if( Bc > 0 ) then Bv = Bv / Bc ; if( Rc > 0 ) then Rv = Rv / Rc ; HRv = DayOpen(0)+Bv - 상단저항가조정 ; LSv = DayOpen(0)-Rv + 하단지지가조정 ; HTv = DayOpen(0)+Bv + 상단전환가조정 ; //상단전환가 LTv = DayOpen(0)-Rv - 하단전환가조정 ; //하단전환가 HGv = DayLow (0)+Gv ; LGv = DayHigh(0)-Gv ; if( HGv < ( HRv + 상단목표가조정 ) ) then { HGv = ( HRv + 상단목표가조정 ) ; } if( LGv > ( LSv - 하단목표가조정 ) ) then { LGv = ( LSv - 하단목표가조정 ) ; } HSv = HGv + 고점매도가조정 - 상단목표가조정 ; LBv = LGv - 저점매수가조정 + 하단목표가조정 ; if( MarketPosition == 1 && MarketPosition != MarketPosition[1] ) Then { io = io + 1 ; } if( MarketPosition == -1 && MarketPosition != MarketPosition[1] ) Then { io = io + 1 ; } if( Time >= 종료시분초조정 && Time < 시작시분초조정 ) then { io = 0 ; exit = false ; ExitLong ("매수종료시간") ; ExitShort("매도종료시간") ; } else if( C < LGv && C[1] >=LGv && exit == false ) then { if( io < 진입횟수조정 ) then { Sell("하단목표가 매도",OnClose,def,1) ; } else if( MarketPosition == 1 ) then { io = 1000 ; exit = true ; ExitShort("하단매도목표가:숏제한") ; ExitLong ("하단매수목표가:롱제한") ; } } else if( C > LBv && C[1] <= LBv && exit == false ) then { if( io < 진입횟수조정 ) then { Buy("저점매수가:매수",OnClose,def,1) ; } else if( MarketPosition == -1 ) then { io = 1000 ; exit = true ; ExitShort("저점매수가:숏제한") ; ExitLong ("저점매수가:롱제한") ; } } else if( C > HGv && C[1] <= HGV && exit == false ) then { if( io < 진입횟수조정 ) then { Buy("상단목표가:매수",OnClose,def,1) ; } else if( MarketPosition == -1 ) then { io = 1000 ; exit = true ; ExitLong ("상단매수목표가:롱제한") ; ExitShort("상단매도목표가:숏제한") ; } } else if( C < HSv && C[1] >= HSv && exit == false ) then { if( io < 진입횟수조정 ) then { Sell("고점매도가:매도",OnClose,def,1) ; } else if( MarketPosition == 1 ) then { io = 1000 ; exit = true ; ExitLong ("고점매도가:롱제한") ; ExitShort("고점매도가:숏제한") ; } } else if( C > HTv && C[1] <= HTv && exit == false ) then { if( io < 진입횟수조정 ) then { Buy("추세매수",OnClose,def,1) ; } else if( MarketPosition == -1 ) then { io = 1000 ; exit = true ; ExitLong ("추세매수:롱제한") ; ExitShort("추세매수:숏제한") ; } } else if( C < HRv && C[1] >= HRv && exit == false ) then { if( io < 진입횟수조정 ) then { Sell("역추세매도",OnClose,def,1) ; } else if( MarketPosition == 1 ) then { io = 1000 ; exit = true ; ExitLong ("역추세매도:롱제한") ; ExitShort("역추세매도:숏제한") ; } } else if( C < LTv && C[1] >= LTv && exit == false ) then { if( io < 진입횟수조정 ) then { Sell("추세매도",OnClose,def,1) ; } else if( MarketPosition == 1 ) then { io = 1000 ; exit = true ; ExitLong ("추세매도:롱제한") ; ExitShort("추세매도:숏제한") ; } } else if( C > LSv && C[1] <= LSv && exit == false ) then { if( io < 진입횟수조정 ) then { Buy("역추세매수",OnClose,def,1) ; } else if( MarketPosition == -1 ) then { io = 1000 ; exit = true ; ExitLong ("역추세매수:롱제한") ; ExitShort("역추세매수:숏제한") ; } } }
프로필 이미지
신들의전쟁
2023-07-23
1176
글번호 170856
시스템
답변완료

잘못된 곳 부탁드립니다.

if (c[1]<avg(c,20))and (rsi(9)<50) Then Sell(); 어디가 잘못되었는지 분봉차트에 아무런 표시가 안되네요.
프로필 이미지
예시
2023-07-22
1092
글번호 170855
시스템
답변완료

전일 종가 대비 N틱을 활용한 방법

전일 종가 대비 몇틱 빠졌는지 올랐는지를 활용해서 매매하고 싶습니다. 5분봉 차트에 data1에 차트에 코스피200선물, data2에 차트에 코스닥150선물, 각각 전일종가대비 몇틱씩 움직이고 있는지를 계산한 후에 그 값을 data1-data2한 값을 차트에 나타내고 싶습니다 즉, 전일 종가대비 당일 data1의 변동 틱 - 전일 종가대비 당일 data2의 변동 틱 을 차트로 만들고 싶습니다. 예를 들어서, 만약 (data1)코스피가 지금 전일종가 대비 -10틱 빠져있고, 코스닥이 -20틱 빠져있다면 차트에 -10 - (-20) = +10 값이 나오게 부탁드립니다. 5분봉 혹은 1분봉으로 해서 실시간으로도 장기간차트로도 보고싶습니다.
프로필 이미지
퀀트드래곤
2023-07-22
1259
글번호 170854
지표