커뮤니티

문의 드립니다!

프로필 이미지
유로파54
2024-09-01 13:34:36
785
글번호 183040
답변완료
안녕하세요! 아래 수식을 다음과같이 수정 부탁드립니다 1, "지표속성" 창의 "챠트표시"란에서 각 가로선의 굵기와 색상등을 사용자지정 할수있도록 수정 * 가로선의 굵기및 색상등의 임의조정과 선과 선사이에 색상을 입히기위함입니다 2, 캔들이 상하방으로 이동시 가로선과 만나기 N틱전에 각각 세로선과 알랍신호가 발생 * 세로선의 두께와 색상은 사용자 지정이 가능토록 부탁합니다 예) 캔들이 각각의 가로선과 상하방에서 만나기 5틱전에 세로선및 알람신호 발생 감사합니다!!! ------------------------------------------------------------------------------- input : N(30),색1(cyan),색2(cyan),굵기1(5),굵기2(5),형태1(1),형태2(1); var : cnt(0),HH(0),LL(0),HTL1(0),LTL1(0),H1(0),L1(0),TL(0); Array : HTL[100](0),LTL[100](0),HV[100](0),LV[100](0); if Sdate != sDate[1] Then { value1 = sDate; Value2 = value1[1]; Value3 = sTime; Value4 = Value3[1]; For cnt = 1 to N { HV[cnt] = 0; LV[cnt] = 0; TL_Delete(HTL[cnt]); TL_Delete(LTL[cnt]); var1 = max(DayOpen(cnt),DayClose(cnt)); var2 = min(DayOpen(cnt),DayClose(cnt)); if cnt == 1 Then { HTL[cnt] = TL_New(sDate,sTime,var1,NextBarSdate,NextBarStime,var1); HV[cnt] = var1; TL_SetColor(HTL[cnt],색1); TL_SetSize(HTL[cnt],굵기1); TL_SetStyle(HTL[cnt],형태1); TL_SetExtRight(HTL[cnt],true); TL_SetDrawMode(HTL[cnt],0); HH = var1; LTL[cnt] = TL_New(sDate,sTime,var2,NextBarSdate,NextBarStime,var2); LV[cnt] = var2; TL_SetColor(LTL[cnt],색2); TL_SetSize(LTL[cnt],굵기2); TL_SetStyle(LTL[cnt],형태2); TL_SetExtRight(LTL[cnt],true); TL_SetDrawMode(LTL[cnt],0); LL = var2; } Else { if abs(var1-DayOpen(0)) < 10 and (var1 > HH or var1 < LL) Then { HTL[cnt] = TL_New(sDate,sTime,var1,NextBarSdate,NextBarStime,var1); HV[cnt] = var1; TL_SetColor(HTL[cnt],색1); TL_SetSize(HTL[cnt],굵기1); TL_SetStyle(HTL[cnt],형태1); TL_SetExtRight(HTL[cnt],true); TL_SetDrawMode(HTL[cnt],0); } if abs(Var2-DayOpen(0)) < 10 and (Var2 > HH or Var2 < LL) Then { LTL[cnt] = TL_New(sDate,sTime,Var2,NextBarSdate,NextBarStime,Var2); LV[cnt] = var2; TL_SetColor(LTL[cnt],색2); TL_SetSize(LTL[cnt],굵기2); TL_SetStyle(LTL[cnt],형태2); TL_SetExtRight(LTL[cnt],true); TL_SetDrawMode(LTL[cnt],0); } if var1 > HH and abs(var1-DayOpen(0)) < 10 Then HH = DayHigh(cnt); if Var2 < LL and abs(Var2-DayOpen(0)) < 10 Then LL = DayLow(cnt); } var3 = max(DayOpen(cnt+1),DayClose(cnt+1)); var4 = min(DayOpen(cnt+1),DayClose(cnt+1)); if cnt == 1 Then { HTL1 = TL_New(Value2,value4,var3,sDate[1],sTime[1],var3); TL_SetColor(HTL1,색1); TL_SetSize(HTL1,굵기1); TL_SetStyle(HTL1,형태1); TL_SetDrawMode(HTL1,0); H1 = var3; LTL1 = TL_New(Value2,Value3,var4,sDate[1],sTime[1],var4); TL_SetColor(LTL1,색2); TL_SetSize(LTL1,굵기2); TL_SetStyle(LTL1,형태2); TL_SetDrawMode(LTL1,0); L1 = var4; } Else { if abs(var3-DayOpen(1)) < 10 and (var3 > H1 or var3 < L1) Then { HTL1 = TL_New(Value2,value4,var3,sDate[1],sTime[1],var3); TL_SetColor(HTL1,색1); TL_SetSize(HTL1,굵기1); TL_SetStyle(HTL1,형태1); TL_SetDrawMode(HTL1,0); } if abs(Var4-DayOpen(1)) < 10 and (Var4 > H1 or Var4 < L1) Then { LTL1 = TL_New(Value2,Value3,var4,sDate[1],sTime[1],var4); TL_SetColor(LTL1,색2); TL_SetSize(LTL1,굵기2); TL_SetStyle(LTL1,형태2); TL_SetDrawMode(LTL1,0); } if var3 > H1 and abs(var3-DayOpen(1)) < 10 Then H1 = Var3; if Var2 < L1 and abs(Var2-DayOpen(0)) < 10 Then L1 = Var4; } } }
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2024-09-02 14:28:57

안녕하세요 예스스탁입니다. 1 문의하신 내용은 가능하지 않습니다. 지표속성의 차트표시탭에서 설정하기 위해서는 plot으로 출력해야 하는데 올리신 수식은 내용상 plot으로 출력하기 어렵습니다. 2 소리출력함수(playsound)는 함수내에 지정한 경로의 wav파일이 구동됩니다. 아래는 예스트레이더에 기본으로 제공되는 wav파일을 지정했습니다. 원하시는 wav파일의 경로와 이름으로 수정하시기 바랍니다. 게시판에서 식을 복사할 경우 경로명 중 ₩의 폰트가 깨질수 있으므로 ₩는 다시 타이핑하시기 바랍니다. input : N(30),색1(cyan),색2(cyan),굵기1(5),굵기2(5),형태1(1),형태2(1); input : 수직선색상(Black),수직선굵기(1); var : cnt(0),HH(0),LL(0),HTL1(0),LTL1(0),H1(0),L1(0),TL(0),vtl(0); Array : HTL[100](0),LTL[100](0),HV[100](0),LV[100](0); if Sdate != sDate[1] Then { value1 = sDate; Value2 = value1[1]; Value3 = sTime; Value4 = Value3[1]; For cnt = 1 to N { HV[cnt] = 0; LV[cnt] = 0; TL_Delete(HTL[cnt]); TL_Delete(LTL[cnt]); var1 = max(DayOpen(cnt),DayClose(cnt)); var2 = min(DayOpen(cnt),DayClose(cnt)); if cnt == 1 Then { HTL[cnt] = TL_New(sDate,sTime,var1,NextBarSdate,NextBarStime,var1); HV[cnt] = var1; TL_SetColor(HTL[cnt],색1); TL_SetSize(HTL[cnt],굵기1); TL_SetStyle(HTL[cnt],형태1); TL_SetExtRight(HTL[cnt],true); TL_SetDrawMode(HTL[cnt],0); HH = var1; LTL[cnt] = TL_New(sDate,sTime,var2,NextBarSdate,NextBarStime,var2); LV[cnt] = var2; TL_SetColor(LTL[cnt],색2); TL_SetSize(LTL[cnt],굵기2); TL_SetStyle(LTL[cnt],형태2); TL_SetExtRight(LTL[cnt],true); TL_SetDrawMode(LTL[cnt],0); LL = var2; } Else { if abs(var1-DayOpen(0)) < 10 and (var1 > HH or var1 < LL) Then { HTL[cnt] = TL_New(sDate,sTime,var1,NextBarSdate,NextBarStime,var1); HV[cnt] = var1; TL_SetColor(HTL[cnt],색1); TL_SetSize(HTL[cnt],굵기1); TL_SetStyle(HTL[cnt],형태1); TL_SetExtRight(HTL[cnt],true); TL_SetDrawMode(HTL[cnt],0); } if abs(Var2-DayOpen(0)) < 10 and (Var2 > HH or Var2 < LL) Then { LTL[cnt] = TL_New(sDate,sTime,Var2,NextBarSdate,NextBarStime,Var2); LV[cnt] = var2; TL_SetColor(LTL[cnt],색2); TL_SetSize(LTL[cnt],굵기2); TL_SetStyle(LTL[cnt],형태2); TL_SetExtRight(LTL[cnt],true); TL_SetDrawMode(LTL[cnt],0); } if var1 > HH and abs(var1-DayOpen(0)) < 10 Then HH = DayHigh(cnt); if Var2 < LL and abs(Var2-DayOpen(0)) < 10 Then LL = DayLow(cnt); } var3 = max(DayOpen(cnt+1),DayClose(cnt+1)); var4 = min(DayOpen(cnt+1),DayClose(cnt+1)); if cnt == 1 Then { HTL1 = TL_New(Value2,value4,var3,sDate[1],sTime[1],var3); TL_SetColor(HTL1,색1); TL_SetSize(HTL1,굵기1); TL_SetStyle(HTL1,형태1); TL_SetDrawMode(HTL1,0); H1 = var3; LTL1 = TL_New(Value2,Value3,var4,sDate[1],sTime[1],var4); TL_SetColor(LTL1,색2); TL_SetSize(LTL1,굵기2); TL_SetStyle(LTL1,형태2); TL_SetDrawMode(LTL1,0); L1 = var4; } Else { if abs(var3-DayOpen(1)) < 10 and (var3 > H1 or var3 < L1) Then { HTL1 = TL_New(Value2,value4,var3,sDate[1],sTime[1],var3); TL_SetColor(HTL1,색1); TL_SetSize(HTL1,굵기1); TL_SetStyle(HTL1,형태1); TL_SetDrawMode(HTL1,0); } if abs(Var4-DayOpen(1)) < 10 and (Var4 > H1 or Var4 < L1) Then { LTL1 = TL_New(Value2,Value3,var4,sDate[1],sTime[1],var4); TL_SetColor(LTL1,색2); TL_SetSize(LTL1,굵기2); TL_SetStyle(LTL1,형태2); TL_SetDrawMode(LTL1,0); } if var3 > H1 and abs(var3-DayOpen(1)) < 10 Then H1 = Var3; if Var2 < L1 and abs(Var2-DayOpen(0)) < 10 Then L1 = Var4; } } } For cnt = 1 to N { if HV[cnt] > 0 and ((H[0] >= HV[cnt]-PriceScale*5 and H[1] < HV[cnt]-PriceScale*5) or (L[0] <= HV[cnt]+PriceScale*5 and L[1] > HV[cnt]+PriceScale*5) or (H[0] >= LV[cnt]-PriceScale*5 and H[1] < LV[cnt]-PriceScale*5) or (L[0] <= LV[cnt]+PriceScale*5 and L[1] > LV[cnt]+PriceScale*5)) Then { vtl = TL_New(sDate,sTime,0,sDate,sTime,999999999); TL_SetColor(vtl,수직선색상); TL_SetSize(vTL,수직선굵기); TL_SetDrawMode(VTL,0); PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav"); } } 즐거운 하루되세요 > 유로파54 님이 쓴 글입니다. > 제목 : 문의 드립니다! > 안녕하세요! 아래 수식을 다음과같이 수정 부탁드립니다 1, "지표속성" 창의 "챠트표시"란에서 각 가로선의 굵기와 색상등을 사용자지정 할수있도록 수정 * 가로선의 굵기및 색상등의 임의조정과 선과 선사이에 색상을 입히기위함입니다 2, 캔들이 상하방으로 이동시 가로선과 만나기 N틱전에 각각 세로선과 알랍신호가 발생 * 세로선의 두께와 색상은 사용자 지정이 가능토록 부탁합니다 예) 캔들이 각각의 가로선과 상하방에서 만나기 5틱전에 세로선및 알람신호 발생 감사합니다!!! ------------------------------------------------------------------------------- input : N(30),색1(cyan),색2(cyan),굵기1(5),굵기2(5),형태1(1),형태2(1); var : cnt(0),HH(0),LL(0),HTL1(0),LTL1(0),H1(0),L1(0),TL(0); Array : HTL[100](0),LTL[100](0),HV[100](0),LV[100](0); if Sdate != sDate[1] Then { value1 = sDate; Value2 = value1[1]; Value3 = sTime; Value4 = Value3[1]; For cnt = 1 to N { HV[cnt] = 0; LV[cnt] = 0; TL_Delete(HTL[cnt]); TL_Delete(LTL[cnt]); var1 = max(DayOpen(cnt),DayClose(cnt)); var2 = min(DayOpen(cnt),DayClose(cnt)); if cnt == 1 Then { HTL[cnt] = TL_New(sDate,sTime,var1,NextBarSdate,NextBarStime,var1); HV[cnt] = var1; TL_SetColor(HTL[cnt],색1); TL_SetSize(HTL[cnt],굵기1); TL_SetStyle(HTL[cnt],형태1); TL_SetExtRight(HTL[cnt],true); TL_SetDrawMode(HTL[cnt],0); HH = var1; LTL[cnt] = TL_New(sDate,sTime,var2,NextBarSdate,NextBarStime,var2); LV[cnt] = var2; TL_SetColor(LTL[cnt],색2); TL_SetSize(LTL[cnt],굵기2); TL_SetStyle(LTL[cnt],형태2); TL_SetExtRight(LTL[cnt],true); TL_SetDrawMode(LTL[cnt],0); LL = var2; } Else { if abs(var1-DayOpen(0)) < 10 and (var1 > HH or var1 < LL) Then { HTL[cnt] = TL_New(sDate,sTime,var1,NextBarSdate,NextBarStime,var1); HV[cnt] = var1; TL_SetColor(HTL[cnt],색1); TL_SetSize(HTL[cnt],굵기1); TL_SetStyle(HTL[cnt],형태1); TL_SetExtRight(HTL[cnt],true); TL_SetDrawMode(HTL[cnt],0); } if abs(Var2-DayOpen(0)) < 10 and (Var2 > HH or Var2 < LL) Then { LTL[cnt] = TL_New(sDate,sTime,Var2,NextBarSdate,NextBarStime,Var2); LV[cnt] = var2; TL_SetColor(LTL[cnt],색2); TL_SetSize(LTL[cnt],굵기2); TL_SetStyle(LTL[cnt],형태2); TL_SetExtRight(LTL[cnt],true); TL_SetDrawMode(LTL[cnt],0); } if var1 > HH and abs(var1-DayOpen(0)) < 10 Then HH = DayHigh(cnt); if Var2 < LL and abs(Var2-DayOpen(0)) < 10 Then LL = DayLow(cnt); } var3 = max(DayOpen(cnt+1),DayClose(cnt+1)); var4 = min(DayOpen(cnt+1),DayClose(cnt+1)); if cnt == 1 Then { HTL1 = TL_New(Value2,value4,var3,sDate[1],sTime[1],var3); TL_SetColor(HTL1,색1); TL_SetSize(HTL1,굵기1); TL_SetStyle(HTL1,형태1); TL_SetDrawMode(HTL1,0); H1 = var3; LTL1 = TL_New(Value2,Value3,var4,sDate[1],sTime[1],var4); TL_SetColor(LTL1,색2); TL_SetSize(LTL1,굵기2); TL_SetStyle(LTL1,형태2); TL_SetDrawMode(LTL1,0); L1 = var4; } Else { if abs(var3-DayOpen(1)) < 10 and (var3 > H1 or var3 < L1) Then { HTL1 = TL_New(Value2,value4,var3,sDate[1],sTime[1],var3); TL_SetColor(HTL1,색1); TL_SetSize(HTL1,굵기1); TL_SetStyle(HTL1,형태1); TL_SetDrawMode(HTL1,0); } if abs(Var4-DayOpen(1)) < 10 and (Var4 > H1 or Var4 < L1) Then { LTL1 = TL_New(Value2,Value3,var4,sDate[1],sTime[1],var4); TL_SetColor(LTL1,색2); TL_SetSize(LTL1,굵기2); TL_SetStyle(LTL1,형태2); TL_SetDrawMode(LTL1,0); } if var3 > H1 and abs(var3-DayOpen(1)) < 10 Then H1 = Var3; if Var2 < L1 and abs(Var2-DayOpen(0)) < 10 Then L1 = Var4; } } }