답변완료
re: re: 부탁드립니다.
1.첨부와 같이 엑셀파일의 모든 내용이 종목에 상관없이 지표에 표시되는데,
제가 부탁드린 내용은 엑셀파일의 종목명 열의 해당종목에만
해당 업종1 열의 해당종목의 내용이 표시되는 것을
부탁드린 것입니다.
ex) KR7016610008 DB금융투자 증권
DB금융투자 종목의 차트에만 "증권"이라는 텍스트가 표시 되도록 하는 것
cf) DB금융투자의 경우 종목코드 열의 KR7016610008의 중간 여섯자리 숫자
KR7 다음숫자 016610 여섯자리가 hts 상의 종목코드입니다.
2. 차후 2000여 전종목에 적용하려고 합니다.
그러니 일일이 텍스트를 입력하는 방식이 아니라,
엑셀에서 종목코드 열를 스캔해서
업종1 열의 내용을 자동으로 해당 종목에만 표시되도록
부탁드립니다.
> 예스스탁 님이 쓴 글입니다.
안녕하세요
예스스탁입니다.
1
텍스트함수는 단순히 날짜/시간/가격을 지정해 위치를 잡아 표시되므로
오른쪽 여백을 지정해 표시는 되지 않습니다.
또한 랭귀지에서 차트의 보이는 영역의 상태를 알수 없습니다.
사용자분이 사용하시는 차트의 크기와 상태에 맞게
글자크기나 위치등을 조절해 보시는 방법뿐이 없습니다.
2
출력되는 텍스트는 "" 안에 지정하시면 됩니다.
글자를 한줄씩 띄우고자 하시면 ""+newLine+""와 같이 텍스트의 중간에 newLine을 추가해 주시면 됩니다.
3
텍스트나 추세선은 차트에 Y축 스케일 안의 가격을 지정하셔야 합니다.
Y축 스케일밖이면 해당 위치에 출력은 되지만 보이지 않게 됩니다.
아래식 응용하셔서 수정보완해 사용하시기 바랍니다.
4
현재봉에서 X(150)봉전에 P(300)봉의 최고가대비 N(10)% 위에 위치에 텍스트를 표시
X를 0으로 하시면 마지막봉 완성봉 위에 표시됩니다.
text_new의 3번쨰 매개변수가 Y축 가격입니다.
input : P(300),N(10),X(150),글자크기(10);
var : str(""),tx(0);
str = "KR7016610008 DB금융투자 증권" + NewLine +
"KR7005830005 DB손해보험 손해보험" + NewLine +
"KR7000990002 DB하이텍 반도체 대표주(생산),스마트카(SMART CAR),시스템반도" + NewLine +
"KR7139130009 DGB금융지주 은행,지주사" + NewLine +
"KR7001530005 DI동일" + NewLine +
"KR7068790005 DMS OLED(유기 발광 다이오드),방위산업/전쟁 및 테러,풍?" + NewLine +
"KR7004840005 DRB동일 자동차부품" + NewLine +
"KR7241520006 DSC인베스트먼트 4차산업 수혜주,일자리(취업),창투사" + NewLine +
"KR7155660004 DSR" + NewLine +
"KR7069730000 DSR제강 철강 중소형";
Text_Delete(tx); ;#새로운봉이 생기면 이전출력을 지움
tx = Text_New(sDate[x],sTime[x],Highest(H,P)*(1+N/100),str); #텍스트 출력함수
Text_SetSize(tx,글자크기); #텍스트 크기 지정함수
Text_SetStyle(tx,2,2);#텍스트 상하좌우정렬 함수
5
마지막봉 기준 최근고가의 N%위는 아래와 같습니다.
input : N(10),X(0),글자크기(10);
var : str(""),tx(0);
str = "KR7016610008 DB금융투자 증권" + NewLine +
"KR7005830005 DB손해보험 손해보험" + NewLine +
"KR7000990002 DB하이텍 반도체 대표주(생산),스마트카(SMART CAR),시스템반도" + NewLine +
"KR7139130009 DGB금융지주 은행,지주사" + NewLine +
"KR7001530005 DI동일" + NewLine +
"KR7068790005 DMS OLED(유기 발광 다이오드),방위산업/전쟁 및 테러,풍?" + NewLine +
"KR7004840005 DRB동일 자동차부품" + NewLine +
"KR7241520006 DSC인베스트먼트 4차산업 수혜주,일자리(취업),창투사" + NewLine +
"KR7155660004 DSR" + NewLine +
"KR7069730000 DSR제강 철강 중소형";
Text_Delete(tx);#새로운봉이 생기면 이전출력을 지움
tx = Text_New(sDate[X],sTime[X],H*(1+N/100),str); #텍스트 출력함수
Text_SetSize(tx,글자크기); #텍스트 크기 지정함수
Text_SetStyle(tx,2,2);#텍스트 상하좌우정렬 함수
즐거운 하루되세요
> 개성상인 님이 쓴 글입니다.
> 제목 : 부탁드립니다.
> 1. 그렇다면 일단 업종1 부분의 내용을 아래의 위치에
날짜/시간 : 일목균형표의 선행스팬의 가장오른쪽 끝 자리 ( 안된다면 가장 최근 봉 위치)
가격 : Y축 상단여백(여백사이즈에 맞게 폰트 조정 가능할까요)
안된다면 300봉이 보이는 차트 기준 최고가*110% 자리 ( 안된다면 최고가 위치)
= > 지표를 추가하는 시점 기준으로 표시되도록 부탁드립니다.
> 예스스탁 님이 쓴 글입니다.
안녕하세요
예스스탁입니다.
문의하신 내용은 가능하지 않습니다.
텍스트 출력함수는 날짜 시간 가격으로 위치를 잡아 표시를 할수 있습니다.
차트의 오른쪽/왼쪽 상단/하단은 수식에서 그 위치값을 알수 없습니다.
또한 너무 많은 내용의 텍스트는 저희가 표기하는 식을 작성해 드리기는 어렵습니다.
즐거운 하루되세요
> 개성상인 님이 쓴 글입니다.
> 제목 : 부탁드립니다.
> 1. 첨부한 엑셀파일 중 업종1 부분의 내용을
차트의 오른쪽 상단에 텍스트로 표기하고 싶습니다.
SK하이닉스, 포스코케미칼, 삼성전자, 삼성SDI 처럼
업종 내용이 여러 건 인 종목의 경우
가능하다면 한 텍스트 창에 모두 표기하면 좋겠고
안되면 첫번째 텍스트 왼쪽에 계속해서 표기해주면 좋겠습니다.
2. 업종2 부분의 내용은
차트의 왼쪽 하단에 텍스트로 표기하고 싶습니다.
삼성전자 처럼 내용이 길어서 한줄에 다 안들어 가는 경우는
위로 줄 바꾸어 내용을 계속해서 표기해주면 좋겠습니다.
2020-09-21
956
글번호 142554
지표
답변완료
장종료 직전 매수실패
5분봉으로 매수진행하는데 3시30분 장막판에 매수신호가 오고 실제 매수는 이루어지지 않는 문제가 발생합니다. 이 문제좀 해결해 주세요..ㅠ
매수신호가 뜨지 않게 3시20분까지만 매수하는걸로 해주시거나, 매수가 이루어질수있게 부탁드릴께요. 물론 다음날은 이어서 정상작동 되도록이요.
Input : 투자금액(10000000),Period(20), MultiD(2), N(1),시작일(20200921),시작시간(090000),청산시간(153000);
Input : loss(5),P(3),WRP(10);
var : e(0),x(0),count(0),Tcond(false),BBup(0),BBdn(0),WR(0),Vma(0);
var : HH(0),Bxcond1(false),Bxcond2(false),Bxcond3(false);
var : LL(0),Sxcond1(false),Sxcond2(false),Sxcond3(false);
Array : VV[6](0),XX[5](0);
BBup = BollBandUp(Period,MultiD);
BBdn = BollBandDown(Period,MultiD);
WR = WILLR(WRP);
Vma = ma(V,P);
vv[0] = floor((투자금액*0.1)/NextBarOpen);
vv[1] = floor((투자금액*0.1)/NextBarOpen);
vv[2] = floor((투자금액*0.1)/NextBarOpen);
vv[3] = floor((투자금액*0.2)/NextBarOpen);
vv[4] = floor((투자금액*0.2)/NextBarOpen);
vv[5] = floor((투자금액*0.3)/NextBarOpen);
if NextBarSdate >= 시작일 and NextBarStime >= 시작시간 Then
Tcond = true;
if bdate != bdate[1] Then
count = 0;
if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then
count = count+1;
if sdate >= 시작일 and stime >= 시작시간 Then
Tcond = true;
if Tcond == true then{
if (TotalTrades == 0 or MarketPosition == 0 and BarsSinceExit(1) > 2) then{
if MarketPosition == 0 and count < N and CrossDown(c,bbdn) and
V >= Vma[1]*2.0 Then {
buy("b1",atmarket,def,vv[MaxEntries]);
}
if MarketPosition == 1 Then{
if CurrentContracts > CurrentContracts[1] Then{
e = e +1;
if e == 1 then
XX[e] = CurrentContracts;
Else
XX[e] = CurrentContracts-CurrentContracts[1];
}
#두번째 매수
if MarketPosition == 1 and e == 1 and CrossDown(c,bbdn) and NextBarSdate == sdate and
V >= Vma[1]*2.0 Then
{
buy("b2",atmarket,def,vv[MaxEntries]);
}
#세번재매수
if MarketPosition == 1 and e == 2 and CrossDown(c,bbdn) and NextBarSdate == sdate and
V >= Vma[1]*2.0 Then
{
buy("b3",atmarket,def,vv[MaxEntries]);
}
#네번재매수
if MarketPosition == 1 and e == 3 and CrossDown(c,bbdn) and NextBarSdate == sdate and
V >= Vma[1]*2.0 Then
{
buy("b4",atmarket,def,vv[MaxEntries]);
}
#다섯번재매수
if MarketPosition == 1 and e == 4 and CrossDown(c,bbdn) and NextBarSdate == sdate and
V >= Vma[1]*2.0 Then
{
buy("b5",atmarket,def,vv[MaxEntries]);
}
#여섯번재매수
if MarketPosition == 1 and e == 5 and CrossDown(c,bbdn) and NextBarSdate == sdate and
V >= Vma[1]*3.0 Then
{
buy("b6",atmarket,def,vv[MaxEntries]);
}
HH = highest(H,BarsSinceEntry);
if CurrentContracts < CurrentContracts[1] and LatestExitName(0) == "Bx1" Then
Bxcond1 = true;
if CurrentContracts < CurrentContracts[1] and LatestExitName(0) == "Bx2" Then
Bxcond2 = true;
if CurrentContracts < CurrentContracts[1] and LatestExitName(0) == "Bx3" Then
Bxcond3 = true;
if Bxcond1 == false and HH >= EntryPrice*1.10 and HH < EntryPrice*1.15 Then
ExitLong("Bx1",AtStop,HH-(HH-EntryPrice)*0.1,"",Floor(MaxContracts*(1/5)),1);
if Bxcond2 == false and HH >= EntryPrice*1.15 and HH < EntryPrice*1.20 Then
ExitLong("Bx2",AtStop,HH-(HH-EntryPrice)*0.1,"",Floor(MaxContracts*(2/5)),1);
if Bxcond3 == false and HH >= EntryPrice*1.20 and HH < EntryPrice*1.30 Then
ExitLong("Bx3",AtStop,HH-(HH-EntryPrice)*0.1,"",Floor(MaxContracts*(2/5)),1);
}}}
2020-09-21
591
글번호 142547
시스템