커뮤니티

text함수부탁드립니다.

프로필 이미지
무지개나날들
2016-03-30 13:36:31
90
글번호 96706
답변완료
TEXT함수로 주차트의 왼쪽에 내가 정한 지금의 이동평균값자리에 현재가를 폰트 12와 흰색으로 아래줄에 현재시간 을 mm:dd:hh:ss로 폰트 10 노란색으로 그 아래 줄에 오늘의 고가 를 폰트 12 녹색으로 아래줄에 노오늘저가 저가값으로 표시하고 싶습니다. 추가로 화살표같은 기호도 표시할 수있나요? 또 밑줄 이탤릭체 글자색 글자배경색 등 과 blink 즉 깜박거리는 것도 됩니까?
지표
답변 3
프로필 이미지

예스스탁 예스스탁 답변

2016-03-30 14:08:25

안녕하세요 예스스탁입니다. 수식은 현재 차트상에 몇개봉이 있는지 알수가 없습니다. 그러므로 차트의 왼쪽으로는 텍스트의 위치를 잡을 수 없습니다. 해당 부분은 사용자분이 적당한 과거봉의 날짜 시간을 지정하셔야 합니다. 아래식에서는 모두 n으로 이전봉에 출력되게 작성해 드립니다. 또한 텍스트의 색상만 지정이 가능합니다. 차트에 출력되는 폰트나 크기는 차트창 속성에서 지정한 크기와 폰트가 모두 적용됩니다. 깜박임등은 제공되지 않습니다. 아래와 같이 텍스트 출력시에 newline으로 연결하면 다음줄에 텍스트가 표시되게 할수 있습니다. 다만 하나의 텍스트함수로 처리되므로 텍스트별 색상은 지정이 가능하지 않습니다. input : N(0); var : month(0),nday(0),hour(0),minute(0),str1(""),str2(""),str3(""),tx(0); var1 = ma(C,2); month = Floor(sdate/100)%100; nday = Floor(sdate%100); hour = Floor(stime/10000); minute = Floor(stime/100)%100; str1 = NumToStr(Month,0)+":"+NumToStr(nday,0)+":"+NumToStr(hour,0)+":"+NumToStr(minute,0); str2 = "오늘고가 : " + NumToStr(dayhigh,2); str3 = "오늘저가 : " + NumToStr(DayLow,2); Text_Delete(tx); tx = Text_New(sdate[n],stime[n],var1[n],str1+NewLine+str2+NewLine+str3); 텍스트 별로 색상을 구별하려면 각각을 새로 텍스트를 표시해야 하는데 서로 다른 Y축값을 주어 출력해야 합니다. 아래식은 이평과 이평-1틱, 이평-2틱에 출력하게 만든식입니다. 차트의 크기에 따라 텍스트가 겹칠수 있습니다. 겹치면 사용자분이 적당히 틱수 주셔서 벌리셔야 합니다. input : N(0); var : month(0),nday(0),hour(0),minute(0),str1(""),str2(""),str3(""); var : tx1(0),tx2(0),tx3(0); var1 = ma(C,2); month = Floor(sdate/100)%100; nday = Floor(sdate%100); hour = Floor(stime/10000); minute = Floor(stime/100)%100; str1 = NumToStr(Month,0)+":"+NumToStr(nday,0)+":"+NumToStr(hour,0)+":"+NumToStr(minute,0); str2 = "오늘고가 : " + NumToStr(dayhigh,2); str3 = "오늘저가 : " + NumToStr(DayLow,2); Text_Delete(tx1); Text_Delete(tx2); Text_Delete(tx3); tx1 = Text_New(sdate[n],stime[n],var1[n],str1); tx2 = Text_New(sdate[n],stime[n],var1[n]-PriceScale*1,str2); tx3 = Text_New(sdate[n],stime[n],var1[n]-PriceScale*2,str3); Text_SetColor(tx1,YELLOW); Text_SetColor(tx2,GREEN); Text_SetColor(tx3,GREEN); 즐거운 하루되세요 > 무지개나날들 님이 쓴 글입니다. > 제목 : text함수부탁드립니다. > TEXT함수로 주차트의 왼쪽에 내가 정한 지금의 이동평균값자리에 현재가를 폰트 12와 흰색으로 아래줄에 현재시간 을 mm:dd:hh:ss로 폰트 10 노란색으로 그 아래 줄에 오늘의 고가 를 폰트 12 녹색으로 아래줄에 노오늘저가 저가값으로 표시하고 싶습니다. 추가로 화살표같은 기호도 표시할 수있나요? 또 밑줄 이탤릭체 글자색 글자배경색 등 과 blink 즉 깜박거리는 것도 됩니까?
프로필 이미지

무지개나날들

2016-03-30 15:48:00

감사합니다. 그런데 너무 붙어서 나와서 가독성이 떨어집니다. 두 줄씩 아래로 간격을 주려면 어떻게 하나요? 그리고 출력이 늦네요.
프로필 이미지

예스스탁 예스스탁 답변

2016-03-31 09:16:20

안녕하세요 예스스탁입니다. 두번째 식과 같은 경우에는 사용자분이 틱수로 조절하셔야 합니다. 하나의 텍스트박스가 아니기 때문에 줄수로 지정이 되지 않습니다. 1번식과 같은 경우에는 newline을 추가하시면 됩니다. input : n(0); var : month(0),nday(0),hour(0),minute(0),str1(""),str2(""),str3(""),tx(0); var1 = ma(C,2); month = Floor(sdate/100)%100; nday = Floor(sdate%100); hour = Floor(stime/10000); minute = Floor(stime/100)%100; str1 = NumToStr(Month,0)+":"+NumToStr(nday,0)+":"+NumToStr(hour,0)+":"+NumToStr(minute,0); str2 = "오늘고가 : " + NumToStr(dayhigh,2); str3 = "오늘저가 : " + NumToStr(DayLow,2); Text_Delete(tx); tx = Text_New(sdate[n],stime[n],var1[n],str1+NewLine+newline+str2+NewLine+newline+str3); 해당식 현재로 부터 과거 n봉전에 출력합니다. 매봉 새로운 값을 찍어야 하므로 삭제와 출력을 반복합니다. 또한 텍스트함수는 봉 완성시 한번만 동작하고 미완성봉값은 출력하지 않습니다. 출력부분의 속도는 제어가 되지 않습니다. 즐거운 하루되세요 > 무지개나날들 님이 쓴 글입니다. > 제목 : Re : 추가 질문입니다. > 감사합니다. 그런데 너무 붙어서 나와서 가독성이 떨어집니다. 두 줄씩 아래로 간격을 주려면 어떻게 하나요? 그리고 출력이 늦네요.