커뮤니티
시스템 수식 부탁드립니다.
2026-04-21 18:17:01
91
글번호 231705
만든 함수 2개 openprice, openprice_2
매수식은 openprice 함수가 기준이고
매도식은 openprice_2 함수가 기준입니다.
매수식:
무포지션에서
매수준비1 :
openprice 가 새로 생기면 매수준비1=1 이라고 정함
이후에 종가가 openprice가격 이하에 오면
매수준비1=0 이 되어 해제됩니다.
매수준비1=1 유효할 때
이후에 발생하는 가장 최근 음봉 종가를
양봉 종가가 상방으로 돌파할 때 2계약 매수합니다.
또는
매수준비1=1 유효하면서
직전 양봉종 가 < 현재봉 양봉 종가를 만족하는 양봉이 2개 연속으로 나올 때 2계약 매수합니다.
청산:
손절청산: 매수봉 저가를 종가가 아닌 현재가가
하방 이탈시 전부 청산합니다.
이익청산:
1계약 청산:
매수봉 종가를 저장하고 매수 이후에 생기는 양봉 종가가
매수봉 종가 위에 위치하면 1계약만 이익청산하고 즉시
손절가격을 매수진입가격인 본절가격으로 변경합니다.
잔존 1계약 청산:
이후에 바로직전봉의 저가를 종가가 아닌 현재가가
하향하면 즉시 잔존 1계약을 청산 합니다.
매도식: 반대논리로 부탁드립니다.
답변 1
예스스탁 예스스탁 답변
2026-04-22 14:12:43
안녕하세요
예스스탁입니다.
var : 매수준비1(0),매도준비1(0);
if openprice != openprice[1] Then
{
매수준비1 = 1;
value1 = 0;
value2 = 0;
value3 = 0;
value4 = 0;
}
if 매수준비1 == 1 and c < openprice Then
매수준비1 = 0;
if 매수준비1 == 1 Then
{
if C < O Then
value1 = O;
if value1 > 0 and CrossUp(C,value1) and C > O Then
Buy("b1",OnClose,Def,2);
if C > O Then
{
value2 = Value2+1;
Value3 = c;
Value4 = Value3[1];
if Value2 >= 2 and value3 > Value4 then
Buy("b2",OnClose,Def,2);
}
}
if MarketPosition == 1 Then
{
if CurrentContracts == 2 Then
{
ExitLong("bl1",AtStop,L[BarsSinceEntry]);
if C > O and c > C[BarsSinceEntry] Then
ExitLong("bx1",OnClose,Def,"",1,1);
}
Else
{
ExitLong("bl2",AtStop,EntryPrice);
ExitLong("bx2",AtStop,L);
}
}
if openprice_2 != openprice_2[1] Then
{
매도준비1 = 1;
var1 = 0;
var2 = 0;
var3 = 0;
var4 = 0;
}
if 매도준비1 == 1 and c > openprice_2 Then
매도준비1 = 0;
if 매도준비1 == 1 Then
{
if C > O Then
var1 = O;
if var1 > 0 and CrossDown(C,var1) and C < O Then
Sell("s1",OnClose,Def,2);
if C < O Then
{
var2 = var2+1;
var3 = c;
var4 = var3[1];
if var2 >= 2 and var3 < var4 then
Sell("s2",OnClose,Def,2);
}
}
if MarketPosition == -1 Then
{
if CurrentContracts == 2 Then
{
ExitShort("sl1",AtStop,H[BarsSinceEntry]);
if C < O and c < C[BarsSinceEntry] Then
ExitShort("sx1",OnClose,Def,"",1,1);
}
Else
{
ExitShort("sl2",AtStop,EntryPrice);
ExitShort("sx2",AtStop,H);
}
}
즐거운 하루되세요