我一直在尝试使用 iCustom()
,但这并不令人满意。
我尝试在指标中使用 GlobalVariableSet()
,在EA中使用 GlobalVariableGet()
方法,但效果不佳。
请帮忙。
答案 0 :(得分:1)
语法为:
int signal = iCustom(NULL, 0, "MyCustomIndicatorName",
...parameters it takes in...,
...the buffer index you want from the custom indicator...,
...shift in bars);
假设你写了一个名为“myMA”的自定义移动平均指标,它只将一段时间作为其外部变量之一。该指标根据用户提供的周期和每个柱的结束计算一个简单的移动平均线。此指标将其计算值存储在数组MAValues[]
中,并将其分配给如下索引:SetIndexBuffer(0, MAValues);
要获得当前柱的移动平均值为200,那么您可以写:
double ma_current_bar = iCustom(NULL, 0, "myMA", 200, 0, 0);
然后,一旦您拥有此值,您就可以根据您确定的某些交易标准进行检查,并在满足时打开订单。例如,如果您想在当前柱的移动平均线等于当前卖出价时打开多头头寸,您可以写:
if (ma_current_bar == Ask){
OrderSend(Symbol(), OP_BUY, 1, Ask, *max slippage*, *sl*, *tp*, NULL, 0, 0, GREEN);
}
这只是示例代码,请勿在实时EA中使用它。
答案 1 :(得分:1)
syntax是:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="2dp"
android:background="#00ff0b"
android:layout_weight="0.7" />
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="2dp"
android:background="#00ff0b"
android:layout_weight="1" />
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="2dp"
android:background="#00ff0b"
android:layout_weight="1" />
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="2dp"
android:background="#00ff0b"
android:layout_weight="1" />
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="2dp"
android:background="#00ff0b"
android:layout_weight="1"
android:id="@+id/textView" />
</LinearLayout>
以下是使用自定义Alligator指标的示例(在MT平台中默认为double iCustom(
string symbol, // symbol
int timeframe, // timeframe
string name, // path/name of the custom indicator compiled program
... // custom indicator input parameters (if necessary)
int mode, // line index
int shift // shift
);
)。
Alligator.mq4
其中double Alligator[3];
Alligator[0] = iCustom(NULL, 0, "Alligator", 13, 8, 8, 5, 5, 3, 0, 0);
Alligator[1] = iCustom(NULL, 0, "Alligator", 13, 8, 8, 5, 5, 3, 1, 0);
Alligator[2] = iCustom(NULL, 0, "Alligator", 13, 8, 8, 5, 5, 3, 2, 0);
是自定义指示符中定义的自定义Alligator的相应输入参数:
13, 8, 8, 5, 5, 3
和//---- input parameters
input int InpJawsPeriod=13; // Jaws Period
input int InpJawsShift=8; // Jaws Shift
input int InpTeethPeriod=8; // Teeth Period
input int InpTeethShift=5; // Teeth Shift
input int InpLipsPeriod=5; // Lips Period
input int InpLipsShift=3; // Lips Shift
是指标中定义的相应行索引:
mode