커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

나스닥 주문시 러셀 반대방향으로 매매설정

안녕하세요 항상 도움을 받고 있습니다. 시스템식에 따라 나스닥 선물 주문시 러셀 선물 반대방향으로 매매를 설정하는 방법을 문의드립니다. 예를 들면 1. 나스닥 매수 신호 발생시 -> 나스닥 매수 + 러셀 매도 2. 나스닥 매도 신호 발생시 -> 나스닥 매도 + 러셀 매수 감사합니다
프로필 이미지
먼지곰
2025-01-09
498
글번호 187029
시스템
답변완료

기준봉 돌파 코딩

빠르고 친절한 답변에 항상 감사를 드립니다. 캔들의 크기(기준봉)를 설정하고 이를 돌파 시 진입과 청산하는 코딩을 부탁드립니다. => X크기 이상의 캔들을 N봉이내에 돌파하는 식?
프로필 이미지
하날랑
2025-01-09
508
글번호 187028
시스템
답변완료

검색식 부탁드립니다. _(_ _)_

항상 도와주심에 거듭 감사드립니다. _(__)_ 아래의 수식1이 수식2를 첫 돌파했을 때와 두번째 돌파했을 때의 종목 검색식을 부탁드립니다. 수식1 var : 당월시가(0),전월시가(0); var : 당월종가(0),전월종가(0); if sDate > sDate[1]+30 Then { 당월시가 = O; 전월시가 = 당월시가[1]; 전월종가 = 당월종가[1]; } 당월종가 = C; if 전월시가 > 0 Then { var1 = ((전월시가+전월종가)/2 + 당월시가)/2; if CrossUp(C,var1) Then Find(1); } 수식2 var : MM(0),KK(0),MO(0),mx(0); var : M1(0),M2(0),M3(0),M4(0),M5(0),M6(0); var : M7(0),M8(0),M9(0),M10(0),M11(0),M12(0); MM = floor(date/100); if MM != MM[1] Then { MO = O; M1 = KK[1]; M2 = M1[1]; M3 = M2[1]; M4 = M3[1]; M5 = M4[1]; M6 = M5[1]; M7 = M6[1]; M8 = M7[1]; M9 = M8[1]; M10 = M9[1]; M11 = M10[1]; M12 = M11[1]; mx = Max(M1, M2, M3, M4, M5,M6, M7, M8, M9, M10, M11, M12); } KK = iff(MO > C, MO, 0); if mx > 0 and CrossUp(C,mx) Then Find(1);
프로필 이미지
한칼부르스
2025-01-09
587
글번호 187027
종목검색
답변완료

문의 드립니다

.
프로필 이미지
푸른
2025-01-13
474
글번호 187026
시스템
답변완료

종목 검색식 부탁드려요

문의드립니다. 1. ADX(14) 가 시그널을(9) 돌파하는 검색식 부탁드려요 (단, 침체(20)를 벗어난 상태에서만 ADX가 시그널을 돌파할때)
프로필 이미지
일지매7
2025-01-09
532
글번호 187025
종목검색
답변완료

종목검색식 부탁드림니다.

항상 노고에 감사드림니다. 아래의 수식을 종목검색식으로 부탁드림니다. 1)종목 C(19) > O(19) && C > O && V(19)*2 < V && Crossup(c, c(19))) 2)종목 Crossup(H, BBandsup(Period, D1)) and V>=V(1)*10 지표변수 Period 300 D1 0.7
프로필 이미지
존슨비치
2025-01-09
511
글번호 187024
종목검색

살빼고싶다 님에 의해서 삭제되었습니다.

프로필 이미지
살빼고싶다
2025-01-08
28
글번호 187023
검색
답변완료

박스하단표시

박스상단에 가격이 표시되 잇는데 박스하단에 표시할려면 어뗀 수식을 입력해야되나요
프로필 이미지
팔보채
2025-01-08
440
글번호 187022
지표
답변완료

질문 드리겠습니다

지난번 답변 감사드립니다 질문1) 조건만족봉 사이의 시간 간격에 대한 수식 질문인데요 분봉에서 차트를 보고있을때 만약 "현재봉과 직전봉이 3거래일 떨어져있다면" 이라는 수식을 만들고 싶습니다 즉 조건봉이 발생한 날을 기준으로 3일째에 다음 조건봉이 발생할때" 라는 의미입니다 봉갯수로 (예로 120분봉에서는 하루에 4개봉) 하려니 분 단위를 다르게 하면 봉 갯수도 바꿔야 해서,, 날짜 시간 함수로 만들고 싶습니다 질문2) 아래 식에서 vv 배열에 h[1] 부터 h[var2-var1] 까지의 값들을 넣으려면 어떻게 작성하면 될까요? 조건만족봉의 1봉전 값부터 직전만족봉의 h 값까지 넣으려고 합니다 만약에 배열에 넣게되면 차트의 가장 처음까지 가면서 계속 넣게 되나요? for loop로 해서 조건 만족봉이 나올때 마다 vv[0] 값을 리셋 할 수 있을까요? 배열관련된 함수들이 많은데 조건봉 사이의 값들에 적용을 하려고 합니다 var : cnt(0); var : t(0),StartBarIndex(0); Array : ii[50](0),aa[50](0),vv[50](0); if h>l*1.08 Then { TL_NEW(sDatE,sTimE,h*1.01,sDatE,sTimE,99999); var1 = Index; Var2 = var1[1]; For cnt = 49 DownTo 1 { aa[cnt] = aa[cnt-1]; } aa[0] = h; } 질문3) 2차원 배열에 값을 넣으려고 합니다 아래 식에서 hh와 ll 값을 cc 라는 배열에 넣으려면 설정을 어떻게 해야되는지 궁금합니다 1열에 hh 값을, 2열에 ll 값을 넣고자 합니다 만약 이렇게 할경우에 cc[0,0] 은 hh(0), cc[1,0] 에는 hh(1)... 이 들어가고 cc[1,0] 에는 ll(0) 이 들어가게 되는게 맞나요??? 감사합니다 var : cnt(0),tt(0),hh(0),ll(0); Array : ; if h>l*1.08 Then { hh=0; ll=l[1]; For cnt = 1 to (var1-Var2)-1 { if H[cnt] > hh Then { hh = h[cnt]; } if l[cnt] <= ll Then ll=l[cnt]; } }
프로필 이미지
yamu
2025-01-09
466
글번호 187021
지표
답변완료

변환부탁드립니다.

트레이딩뷰 지표인데..변환가능한가요? 부탁드립니다. //@version=5 indicator("TradesLite ", overlay = true, max_labels_count = 500, max_boxes_count = 500, max_lines_count = 500, max_bars_back = 1000) // //SETTINGS // // INDICATOR SETTINGS swing_length = input.int(10, title = 'Swing High/Low Length', group = 'Settings', minval = 1, maxval = 50) history_of_demand_to_keep = input.int(20, title = 'History To Keep', minval = 5, maxval = 50) box_width = input.float(2.5, title = 'Supply/Demand Box Width', group = 'Settings', minval = 1, maxval = 10, step = 0.5) // INDICATOR VISUAL SETTINGS supply_color = input.color(color.new(#EDEDED,70), title = 'Supply', group = 'Visual Settings', inline = '3') supply_outline_color = input.color(color.new(color.white,75), title = 'Outline', group = 'Visual Settings', inline = '3') demand_color = input.color(color.new(#00FFFF,70), title = 'Demand', group = 'Visual Settings', inline = '4') demand_outline_color = input.color(color.new(color.white,75), title = 'Outline', group = 'Visual Settings', inline = '4') bos_label_color = input.color(color.white, title = 'BOS Label', group = 'Visual Settings', inline = '5') poi_label_color = input.color(color.white, title = 'POI Label', group = 'Visual Settings', inline = '7') swing_type_color = input.color(color.black, title = 'Price Action Label', group = 'Visual Settings', inline = '8') // //END SETTINGS // // //FUNCTIONS // // FUNCTION TO ADD NEW AND REMOVE LAST IN ARRAY f_array_add_pop(array, new_value_to_add) => array.unshift(array, new_value_to_add) array.pop(array) // FUNCTION MAKE SURE SUPPLY ISNT OVERLAPPING f_check_overlapping(new_poi, box_array, atr) => atr_threshold = atr * 2 okay_to_draw = true for i = 0 to array.size(box_array) - 1 top = box.get_top(array.get(box_array, i)) bottom = box.get_bottom(array.get(box_array, i)) poi = (top + bottom) / 2 upper_boundary = poi + atr_threshold lower_boundary = poi - atr_threshold if new_poi >= lower_boundary and new_poi <= upper_boundary okay_to_draw := false break else okay_to_draw := true okay_to_draw // FUNCTION TO DRAW SUPPLY OR DEMAND ZONE f_supply_demand(value_array, bn_array, box_array, label_array, box_type, atr) => atr_buffer = atr * (box_width / 10) box_left = array.get(bn_array, 0) box_right = bar_index var float box_top = 0.00 var float box_bottom = 0.00 var float poi = 0.00 if box_type == 1 box_top := array.get(value_array, 0) box_bottom := box_top - atr_buffer poi := (box_top + box_bottom) / 2 else if box_type == -1 box_bottom := array.get(value_array, 0) box_top := box_bottom + atr_buffer poi := (box_top + box_bottom) / 2 okay_to_draw = f_check_overlapping(poi, box_array, atr) // okay_to_draw = true //delete oldest box, and then create a new box and add it to the array if box_type == 1 and okay_to_draw box.delete( array.get(box_array, array.size(box_array) - 1) ) f_array_add_pop(box_array, box.new( left = box_left, top = box_top, right = box_right, bottom = box_bottom, border_color = supply_outline_color, bgcolor = supply_color, extend = extend.right, text = 'SUPPLY', text_halign = text.align_center, text_valign = text.align_center, text_color = poi_label_color, text_size = size.small, xloc = xloc.bar_index)) box.delete( array.get(label_array, array.size(label_array) - 1) ) f_array_add_pop(label_array, box.new( left = box_left, top = poi, right = box_right, bottom = poi, border_color = color.new(poi_label_color,90), bgcolor = color.new(poi_label_color,90), extend = extend.right, text = 'POI', text_halign = text.align_left, text_valign = text.align_center, text_color = poi_label_color, text_size = size.small, xloc = xloc.bar_index)) else if box_type == -1 and okay_to_draw box.delete( array.get(box_array, array.size(box_array) - 1) ) f_array_add_pop(box_array, box.new( left = box_left, top = box_top, right = box_right, bottom = box_bottom, border_color = demand_outline_color, bgcolor = demand_color, extend = extend.right, text = 'DEMAND', text_halign = text.align_center, text_valign = text.align_center, text_color = poi_label_color, text_size = size.small, xloc = xloc.bar_index)) box.delete( array.get(label_array, array.size(label_array) - 1) ) f_array_add_pop(label_array, box.new( left = box_left, top = poi, right = box_right, bottom = poi, border_color = color.new(poi_label_color,90), bgcolor = color.new(poi_label_color,90), extend = extend.right, text = 'POI', text_halign = text.align_left, text_valign = text.align_center, text_color = poi_label_color, text_size = size.small, xloc = xloc.bar_index)) // FUNCTION TO CHANGE SUPPLY/DEMAND TO A BOS IF BROKEN f_sd_to_bos(box_array, bos_array, label_array, zone_type) => if zone_type == 1 for i = 0 to array.size(box_array) - 1 level_to_break = box.get_top(array.get(box_array,i)) // if ta.crossover(close, level_to_break) if close >= level_to_break copied_box = box.copy(array.get(box_array,i)) f_array_add_pop(bos_array, copied_box) mid = (box.get_top(array.get(box_array,i)) + box.get_bottom(array.get(box_array,i))) / 2 box.set_top(array.get(bos_array,0), mid) box.set_bottom(array.get(bos_array,0), mid) box.set_extend( array.get(bos_array,0), extend.none) box.set_right( array.get(bos_array,0), bar_index) box.set_text( array.get(bos_array,0), 'BOS' ) box.set_text_color( array.get(bos_array,0), bos_label_color) box.set_text_size( array.get(bos_array,0), size.small) box.set_text_halign( array.get(bos_array,0), text.align_center) box.set_text_valign( array.get(bos_array,0), text.align_center) box.delete(array.get(box_array, i)) box.delete(array.get(label_array, i)) if zone_type == -1 for i = 0 to array.size(box_array) - 1 level_to_break = box.get_bottom(array.get(box_array,i)) // if ta.crossunder(close, level_to_break) if close <= level_to_break copied_box = box.copy(array.get(box_array,i)) f_array_add_pop(bos_array, copied_box) mid = (box.get_top(array.get(box_array,i)) + box.get_bottom(array.get(box_array,i))) / 2 box.set_top(array.get(bos_array,0), mid) box.set_bottom(array.get(bos_array,0), mid) box.set_extend( array.get(bos_array,0), extend.none) box.set_right( array.get(bos_array,0), bar_index) box.set_text( array.get(bos_array,0), 'BOS' ) box.set_text_color( array.get(bos_array,0), bos_label_color) box.set_text_size( array.get(bos_array,0), size.small) box.set_text_halign( array.get(bos_array,0), text.align_center) box.set_text_valign( array.get(bos_array,0), text.align_center) box.delete(array.get(box_array, i)) box.delete(array.get(label_array, i)) // FUNCTION MANAGE CURRENT BOXES BY CHANGING ENDPOINT f_extend_box_endpoint(box_array) => for i = 0 to array.size(box_array) - 1 box.set_right(array.get(box_array, i), bar_index + 100) // //END FUNCTIONS // //CALCULATIONS // // CALCULATE ATR atr = ta.atr(50) // CALCULATE SWING HIGHS & SWING LOWS swing_high = ta.pivothigh(high, swing_length, swing_length) swing_low = ta.pivotlow(low, swing_length, swing_length) // ARRAYS FOR SWING H/L & BN var swing_high_values = array.new_float(5,0.00) var swing_low_values = array.new_float(5,0.00) var swing_high_bns = array.new_int(5,0) var swing_low_bns = array.new_int(5,0) // ARRAYS FOR SUPPLY / DEMAND var current_supply_box = array.new_box(history_of_demand_to_keep, na) var current_demand_box = array.new_box(history_of_demand_to_keep, na) // ARRAYS FOR SUPPLY / DEMAND POI LABELS var current_supply_poi = array.new_box(history_of_demand_to_keep, na) var current_demand_poi = array.new_box(history_of_demand_to_keep, na) // ARRAYS FOR BOS var supply_bos = array.new_box(5, na) var demand_bos = array.new_box(5, na) // //END CALCULATIONS // // NEW SWING HIGH if not na(swing_high) //MANAGE SWING HIGH VALUES f_array_add_pop(swing_high_values, swing_high) f_array_add_pop(swing_high_bns, bar_index[swing_length]) f_supply_demand(swing_high_values, swing_high_bns, current_supply_box, current_supply_poi, 1, atr) // NEW SWING LOW else if not na(swing_low) //MANAGE SWING LOW VALUES f_array_add_pop(swing_low_values, swing_low) f_array_add_pop(swing_low_bns, bar_index[swing_length]) f_supply_demand(swing_low_values, swing_low_bns, current_demand_box, current_demand_poi, -1, atr) f_sd_to_bos(current_supply_box, supply_bos, current_supply_poi, 1) f_sd_to_bos(current_demand_box, demand_bos, current_demand_poi, -1) f_extend_box_endpoint(current_supply_box) f_extend_box_endpoint(current_demand_box)
프로필 이미지
bw
2025-01-08
612
글번호 187020
지표