Definition von mp (():
Positionen = Austausch.Getposition ((()
wenn len ((Positionen) == 0:
Rückkehr 0
für i in der Reichweite (Längen):
wenn (Positionen[i][Type] == PD_LONG) oder (Positionen[i][Type] == PD_LONG_YD):
Rückgabe 1
elif (Positionen[i][Type] == PD_SHORT) oder (Positionen[i][Type] == PD_SHORT_YD):
Rückgabe -1
Definition der Haupt*:
Auswechselung.SetContractType ((MA109)
während True:
Aufzeichnungen=Austausch.GetRecords()
wenn len ((Einträge) < 50: weiter
Schließen = Aufzeichnungen[len(Aufzeichnungen) - 1].schließen
Positionen = mp()
oben = TA.Höchste (Verzeichnisse, 50, Hoch)
Niedrigere = TA.Niedrigste (Aufzeichnungen, 50, Niedrigere)
Mittel = (Ober + Unter) / 2
Obj = ext.NewPositionManager (siehe unten)
wenn die Positionen > 0 und close < middle sind:
Obj.AbdeckungAlle
wenn die Positionen < 0 und schließen > Mitte:
Obj.AbdeckungAlle
wenn Positionen == 0:
wenn nahe > ober:
Obj.0penlong ((MA109,1)
elif schließen < niedriger:
Obj.0penshort ((MA109,1)